List of usage examples for com.liferay.portal.kernel.template TemplateConstants WRITER
String WRITER
To view the source code for com.liferay.portal.kernel.template TemplateConstants WRITER.
Click Source Link
From source file:com.liferay.portlet.display.template.internal.PortletDisplayTemplateImpl.java
License:Open Source License
@Override public String renderDDMTemplate(HttpServletRequest request, HttpServletResponse response, DDMTemplate ddmTemplate, List<?> entries, Map<String, Object> contextObjects) throws Exception { Transformer transformer = TransformerHolder.getTransformer(); contextObjects.put(PortletDisplayTemplateConstants.TEMPLATE_ID, ddmTemplate.getTemplateId()); contextObjects.put(PortletDisplayTemplateConstants.ENTRIES, entries); if (!entries.isEmpty()) { contextObjects.put(PortletDisplayTemplateConstants.ENTRY, entries.get(0)); }/*w ww . j av a 2 s .c o m*/ contextObjects.put(PortletDisplayTemplateConstants.LOCALE, request.getLocale()); RenderRequest renderRequest = (RenderRequest) request.getAttribute(JavaConstants.JAVAX_PORTLET_REQUEST); contextObjects.put(PortletDisplayTemplateConstants.RENDER_REQUEST, renderRequest); RenderResponse renderResponse = (RenderResponse) request.getAttribute(JavaConstants.JAVAX_PORTLET_RESPONSE); contextObjects.put(PortletDisplayTemplateConstants.RENDER_RESPONSE, renderResponse); if ((renderRequest != null) && (renderResponse != null)) { PortletURL currentURL = PortletURLUtil.getCurrent(renderRequest, renderResponse); contextObjects.put(PortletDisplayTemplateConstants.CURRENT_URL, currentURL.toString()); } ThemeDisplay themeDisplay = (ThemeDisplay) request.getAttribute(WebKeys.THEME_DISPLAY); contextObjects.put(PortletDisplayTemplateConstants.THEME_DISPLAY, themeDisplay); // Custom context objects contextObjects.put(TemplateConstants.CLASS_NAME_ID, ddmTemplate.getClassNameId()); String language = ddmTemplate.getLanguage(); TemplateManager templateManager = TemplateManagerUtil.getTemplateManager(language); TemplateHandler templateHandler = TemplateHandlerRegistryUtil .getTemplateHandler(ddmTemplate.getClassNameId()); templateManager.addContextObjects(contextObjects, templateHandler.getCustomContextObjects()); // Taglibs templateManager.addTaglibSupport(contextObjects, request, response); UnsyncStringWriter unsyncStringWriter = new UnsyncStringWriter(); templateManager.addTaglibTheme(contextObjects, "taglibLiferay", request, new PipingServletResponse(response, unsyncStringWriter)); contextObjects.put(TemplateConstants.WRITER, unsyncStringWriter); if (renderRequest != null) { _mergePortletPreferences(renderRequest, contextObjects); } return transformer.transform(themeDisplay, contextObjects, ddmTemplate.getScript(), language, unsyncStringWriter); }