Example usage for com.liferay.portal.kernel.template Template processTemplate

List of usage examples for com.liferay.portal.kernel.template Template processTemplate

Introduction

In this page you can find the example usage for com.liferay.portal.kernel.template Template processTemplate.

Prototype

public void processTemplate(Writer writer) throws TemplateException;

Source Link

Usage

From source file:com.liferay.content.targeting.portlet.FreeMarkerPortlet.java

License:Open Source License

@Override
protected void include(String path, PortletRequest portletRequest, PortletResponse portletResponse,
        String lifecycle) throws IOException, PortletException {

    PortletContext portletContext = getPortletContext();

    String servletContextName = portletContext.getPortletContextName();

    String resourcePath = servletContextName.concat(TemplateConstants.SERVLET_SEPARATOR).concat(path);

    boolean resourceExists = false;

    try {/*from w ww.  j  ava  2  s  .c o m*/
        resourceExists = TemplateResourceLoaderUtil.hasTemplateResource(TemplateConstants.LANG_TYPE_FTL,
                resourcePath);
    } catch (TemplateException te) {
        throw new IOException(te.getMessage());
    }

    if (!resourceExists) {
        _log.error(path + " is not a valid include");
    } else {
        try {
            TemplateResource templateResource = TemplateResourceLoaderUtil
                    .getTemplateResource(TemplateConstants.LANG_TYPE_FTL, resourcePath);

            Template template = TemplateManagerUtil.getTemplate(TemplateConstants.LANG_TYPE_FTL,
                    templateResource, false);

            TemplateTaglibSupportProvider templateTaglibSupportProvider = getTaglibSupportProvider();

            if (templateTaglibSupportProvider != null) {
                templateTaglibSupportProvider.addTaglibSupport(template, servletContextName, portletRequest,
                        portletResponse);
            }

            // LPS-43725

            HttpServletRequestWrapper httpServletRequestWrapper = new HttpServletRequestWrapper(
                    PortalUtil.getHttpServletRequest(portletRequest));

            HttpServletResponseWrapper httpServletResponseWrapper = new HttpServletResponseWrapper(
                    PortalUtil.getHttpServletResponse(portletResponse));

            HttpRequestHashModel httpRequestHashModel = new HttpRequestHashModel(httpServletRequestWrapper,
                    httpServletResponseWrapper, ObjectWrapper.DEFAULT_WRAPPER);

            template.put("Request", httpRequestHashModel);

            populateContext(path, portletRequest, portletResponse, template);

            Writer writer = null;

            if (portletResponse instanceof MimeResponse) {
                MimeResponse mimeResponse = (MimeResponse) portletResponse;

                writer = UnsyncPrintWriterPool.borrow(mimeResponse.getWriter());
            } else {
                writer = new UnsyncStringWriter();
            }

            template.processTemplate(writer);
        } catch (Exception e) {
            throw new PortletException(e);
        }
    }

    if (clearRequestParameters) {
        if (lifecycle.equals(PortletRequest.RENDER_PHASE)) {
            portletResponse.setProperty("clear-request-parameters", "true");
        }
    }
}

From source file:com.liferay.document.library.web.internal.display.context.logic.UIItemsBuilder.java

License:Open Source License

public void addCheckinToolbarItem(List<ToolbarItem> toolbarItems) throws PortalException {

    if (!_fileEntryDisplayContextHelper.isCheckinActionAvailable()) {
        return;/*ww  w. jav  a  2s  . co m*/
    }

    PortletURL portletURL = _getActionURL("/document_library/edit_file_entry", Constants.CHECKIN);

    portletURL.setParameter("fileEntryId", String.valueOf(_fileEntry.getFileEntryId()));

    JavaScriptToolbarItem javaScriptToolbarItem = _addJavaScriptUIItem(new JavaScriptToolbarItem(),
            toolbarItems, DLUIItemKeys.CHECKIN, LanguageUtil.get(_resourceBundle, "checkin"),
            getNamespace() + "showVersionDetailsDialog('" + portletURL + "');");

    String javaScript = "/com/liferay/document/library/web/display/context/dependencies" + "/checkin_js.ftl";

    Class<?> clazz = getClass();

    URLTemplateResource urlTemplateResource = new URLTemplateResource(javaScript,
            clazz.getResource(javaScript));

    Template template = TemplateManagerUtil.getTemplate(TemplateConstants.LANG_TYPE_FTL, urlTemplateResource,
            false);

    template.put("dialogCancelButtonLabel", LanguageUtil.get(_resourceBundle, "cancel"));
    template.put("dialogSaveButtonLabel", LanguageUtil.get(_resourceBundle, "save"));
    template.put("dialogTitle", UnicodeLanguageUtil.get(_resourceBundle, "describe-your-changes"));
    template.put("namespace", getNamespace());

    UnsyncStringWriter unsyncStringWriter = new UnsyncStringWriter();

    template.processTemplate(unsyncStringWriter);

    javaScriptToolbarItem.setJavaScript(unsyncStringWriter.toString());
}

From source file:com.liferay.document.library.web.internal.display.context.logic.UIItemsBuilder.java

License:Open Source License

public void addOpenInMsOfficeMenuItem(List<MenuItem> menuItems) throws PortalException {

    if (!isOpenInMsOfficeActionAvailable()) {
        return;/* w  w  w. j  av a2 s  . co m*/
    }

    String webDavURL = DLUtil.getWebDavURL(_themeDisplay, _fileEntry.getFolder(), _fileEntry,
            PropsValues.DL_FILE_ENTRY_OPEN_IN_MS_OFFICE_MANUAL_CHECK_IN_REQUIRED, true);

    String onClick = getNamespace() + "openDocument('" + webDavURL + "');";

    JavaScriptMenuItem javascriptMenuItem = _addJavaScriptUIItem(new JavaScriptMenuItem(), menuItems,
            DLUIItemKeys.OPEN_IN_MS_OFFICE, "open-in-ms-office", onClick);

    String javaScript = "/com/liferay/document/library/web/display/context/dependencies"
            + "/open_in_ms_office_js.ftl";

    Class<?> clazz = getClass();

    URLTemplateResource urlTemplateResource = new URLTemplateResource(javaScript,
            clazz.getResource(javaScript));

    Template template = TemplateManagerUtil.getTemplate(TemplateConstants.LANG_TYPE_FTL, urlTemplateResource,
            false);

    template.put("errorMessage", UnicodeLanguageUtil.get(_resourceBundle,
            "cannot-open-the-requested-document-due-to-the-following-" + "reason"));
    template.put("namespace", getNamespace());

    UnsyncStringWriter unsyncStringWriter = new UnsyncStringWriter();

    template.processTemplate(unsyncStringWriter);

    javascriptMenuItem.setJavaScript(unsyncStringWriter.toString());
}

From source file:com.liferay.document.library.web.internal.display.context.logic.UIItemsBuilder.java

License:Open Source License

public JavaScriptMenuItem getJavacriptCheckinMenuItem() throws PortalException {

    PortletURL portletURL = _getActionURL("/document_library/edit_file_entry", Constants.CHECKIN);

    portletURL.setParameter("fileEntryId", String.valueOf(_fileEntry.getFileEntryId()));

    JavaScriptMenuItem javascriptMenuItem = new JavaScriptMenuItem();

    javascriptMenuItem.setKey(DLUIItemKeys.CHECKIN);
    javascriptMenuItem.setLabel("checkin");
    javascriptMenuItem.setOnClick(getNamespace() + "showVersionDetailsDialog('" + portletURL + "');");

    String javaScript = "/com/liferay/document/library/web/display/context/dependencies" + "/checkin_js.ftl";

    Class<?> clazz = getClass();

    URLTemplateResource urlTemplateResource = new URLTemplateResource(javaScript,
            clazz.getResource(javaScript));

    Template template = TemplateManagerUtil.getTemplate(TemplateConstants.LANG_TYPE_FTL, urlTemplateResource,
            false);/*from  w  ww .j  av  a  2  s  .co  m*/

    template.put("dialogCancelButtonLabel", LanguageUtil.get(_resourceBundle, "cancel"));
    template.put("dialogSaveButtonLabel", LanguageUtil.get(_resourceBundle, "save"));
    template.put("dialogTitle", UnicodeLanguageUtil.get(_resourceBundle, "describe-your-changes"));
    template.put("namespace", getNamespace());
    template.put("randomNamespace", _request.getAttribute("randomNamespace"));

    UnsyncStringWriter unsyncStringWriter = new UnsyncStringWriter();

    template.processTemplate(unsyncStringWriter);

    javascriptMenuItem.setJavaScript(unsyncStringWriter.toString());

    return javascriptMenuItem;
}

From source file:com.liferay.dynamic.data.lists.form.web.internal.notification.DDLFormEmailNotificationSender.java

License:Open Source License

protected String render(Template template) throws TemplateException {
    Writer writer = new UnsyncStringWriter();

    template.put(TemplateConstants.NAMESPACE, _NAMESPACE);

    template.processTemplate(writer);

    return writer.toString();
}

From source file:com.liferay.dynamic.data.mapping.form.field.type.BaseDDMFormFieldRenderer.java

License:Open Source License

protected String render(Template template) throws PortalException {
    Writer writer = new UnsyncStringWriter();

    template.processTemplate(writer);

    return writer.toString();
}

From source file:com.liferay.dynamic.data.mapping.form.renderer.internal.DDMFormRendererImpl.java

License:Open Source License

protected String render(Template template, String namespace) throws TemplateException {

    Writer writer = new UnsyncStringWriter();

    template.put(TemplateConstants.NAMESPACE, namespace);
    template.put(TemplateConstants.RENDER_STRICT, Boolean.FALSE);

    template.processTemplate(writer);

    return writer.toString();
}

From source file:com.liferay.dynamic.data.mapping.internal.render.DDMFormFieldFreeMarkerRenderer.java

License:Open Source License

/**
 * @see com.liferay.taglib.util.ThemeUtil#includeFTL
 *///  www. j a v a  2  s.  c  om
protected String processFTL(HttpServletRequest request, HttpServletResponse response, Template template)
        throws Exception {

    template.prepare(request);

    Writer writer = new UnsyncStringWriter();

    template.processTemplate(writer);

    return writer.toString();
}

From source file:com.liferay.dynamic.data.mapping.template.DDMTemplateVariableCodeHandler.java

License:Open Source License

protected String getTemplateContent(Template template, TemplateVariableDefinition templateVariableDefinition,
        String language) throws Exception {

    prepareTemplate(template, templateVariableDefinition, language);

    Writer writer = new UnsyncStringWriter();

    template.processTemplate(writer);

    return StringUtil.trim(writer.toString());
}

From source file:com.liferay.journal.transformer.JournalTransformer.java

License:Open Source License

protected void mergeTemplate(Template template, UnsyncStringWriter unsyncStringWriter,
        boolean propagateException) throws Exception {

    if (propagateException) {
        template.doProcessTemplate(unsyncStringWriter);
    } else {/*ww  w. j  a va 2 s .c  o  m*/
        template.processTemplate(unsyncStringWriter);
    }
}