/** * Renders an attribute for real. * * @param attr The attribute to render. * @throws IOException If something goes wrong during the reading of * definition files. */ protected void render(Attribute attr) throws IOException { container.render(attr, pageContext); }
/** {@inheritDoc} */ @Override protected void renderContext() { container.render(name, pageContext); } }
@Override public void render(String definition, Request request) { container.render(definition, request); }
@Override public void render(Definition definition, Request request) { container.render(definition, request); }
@Override public void render(Attribute attribute, Request request) throws IOException { container.render(attribute, request); }
/** {@inheritDoc} */ @Override public void render(String path, Request request) throws IOException { if (path == null) { throw new CannotRenderException("Cannot dispatch a null path"); } container.render(path, request); }
/** {@inheritDoc} */ @Override public void write(Object value, Attribute attribute, TilesRequestContext request) throws IOException { container.render(value.toString(), request.getRequestObjects()); } }
public boolean render(InternalContextAdapter context, Writer writer) throws IOException { Request velocityRequest = createVelocityRequest( getServletContext(), writer); TilesContainer container = TilesAccess .getCurrentContainer(velocityRequest); container.render(attribute, velocityRequest); return true; }
/** {@inheritDoc} */ protected void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { TilesContainer container = ServletUtil.getContainer( getServletContext(), containerKey); mutator.mutate(container.getAttributeContext(req, res), req); String definition = getDefinitionName(req); if (log.isDebugEnabled()) { log.info("Dispatching to tile '" + definition + "'"); } container.render(definition, req, res); }
public boolean render(InternalContextAdapter context, Writer writer) { Request velocityRequest = createVelocityRequest( getServletContext(), writer); TilesContainer container = TilesAccess .getCurrentContainer(velocityRequest); container.render(definitionName, velocityRequest); return true; }
public void render(final Map<String, ?> model, final HttpServletRequest request, final HttpServletResponse response) throws Exception { final ServletContext servletContext = getServletContext(); if (getTemplateName() == null) { throw new IllegalArgumentException("Property 'templateName' is required"); } if (getTemplateEngine() == null) { throw new IllegalArgumentException("Property 'templateEngine' is required"); } final TemplateEngine viewTemplateEngine = getTemplateEngine(); final IProcessingContext processingContext = buildContextAndPrepareResponse(viewTemplateEngine, model, request, response); final TilesContainer container = ServletUtil.getContainer(servletContext); if (container == null) { throw new ServletException( "Tiles container is not initialized. " + "Have you added a " + ThymeleafTilesConfigurer.class.getSimpleName() + " to " + "your web application context?"); } container.render(getTemplateName(), viewTemplateEngine, processingContext, request, response, response.getWriter()); }
/** * * @param actionUrl url should be start with "/" * @param request HttpServletRequest * @param response HttpServletResponse * @throws Exception Exception */ public static void render(String actionUrl, HttpServletRequest request, HttpServletResponse response) throws Exception { TilesContainer container = TilesAccess.getContainer( request.getSession().getServletContext()); AttributeContext attributeContext = container.startContext(request, response); Attribute attr = new Attribute(actionUrl); attributeContext.putAttribute("body", attr); container.render("main.layout", request, response); container.endContext(request, response); }
public void render(final Map<String, ?> model, final HttpServletRequest request, final HttpServletResponse response) throws Exception { final ServletContext servletContext = getServletContext(); if (getTemplateName() == null) { throw new IllegalArgumentException("Property 'templateName' is required"); } if (getTemplateEngine() == null) { throw new IllegalArgumentException("Property 'templateEngine' is required"); } final TemplateEngine viewTemplateEngine = getTemplateEngine(); final IProcessingContext processingContext = buildContextAndPrepareResponse(viewTemplateEngine, model, request, response); final TilesContainer container = ServletUtil.getContainer(servletContext); if (container == null) { throw new ServletException( "Tiles container is not initialized. " + "Have you added a " + ThymeleafTilesConfigurer.class.getSimpleName() + " to " + "your web application context?"); } container.render(getTemplateName(), viewTemplateEngine, processingContext, request, response, response.getWriter()); }
/** {@inheritDoc} */ @Override public void write(Object value, Attribute attribute, TilesRequestContext request) throws IOException { if (value instanceof String) { String valueString = (String) value; Object[] requestItems = request.getRequestObjects(); if (container.isValidDefinition(valueString, requestItems)) { container.render(valueString, requestItems); } else if (valueString.startsWith("/")) { request.dispatch(valueString); } else { request.getWriter().write(valueString); } } else { throw new RendererException( "Cannot render an untyped object attribute"); } } }
/** * {@inheritDoc} */ public void doFilter(ServletRequest req, ServletResponse res, FilterChain filterChain) throws IOException, ServletException { // If the request contains the prevent token, we must not reapply the definition. // This is used to ensure that filters mapped to wild cards do not infinately // loop. if (isPreventTokenPresent(req)) { filterChain.doFilter(req, res); return; } TilesContainer container = ServletUtil.getContainer( getServletContext(), containerKey); mutator.mutate(container.getAttributeContext(req, res), req); if (preventDecorationToken != null) { req.setAttribute(preventDecorationToken, Boolean.TRUE); } String definitionName = getDefinitionForRequest(req); container.render(definitionName, req, res); }
/** {@inheritDoc} */ @Override protected void doGet(HttpServletRequest req, HttpServletResponse res) { ApplicationContext applicationContext = org.apache.tiles.request.servlet.ServletUtil .getApplicationContext(getServletContext()); Request request = new ServletRequest(applicationContext, req, res); TilesContainer container = TilesAccess.getContainer(applicationContext, containerKey); mutator.mutate(container.getAttributeContext(request), req); String definition = getDefinitionName(req); if (log.isDebugEnabled()) { log.info("Dispatching to tile '" + definition + "'"); } container.render(definition, request); }
private void renderTilesView(ExternalContext externalContext, Object[] requestObjects, TilesContainer container, UIViewRoot viewToRender, String viewId, String tilesId) { handleCharacterEncoding(viewId, externalContext, viewToRender); container.startContext(requestObjects); try { container.render(tilesId,requestObjects); } catch (TilesException e) { throw new FacesException(e); } finally { container.endContext(requestObjects); } handleCharacterEncodingPostDispatch(externalContext); }
@Override protected void renderMergedOutputModel( Map<String, Object> model, HttpServletRequest request, HttpServletResponse response) throws Exception { ServletContext servletContext = getServletContext(); TilesContainer container = ServletUtil.getContainer(servletContext); if (container == null) { throw new ServletException("Tiles container is not initialized. " + "Have you added a TilesConfigurer to your web application context?"); } exposeModelAsRequestAttributes(model, request); JstlUtils.exposeLocalizationContext(new RequestContext(request, servletContext)); if (this.alwaysInclude) { ServletUtil.setForceInclude(request, true); } container.render(getUrl(), request, response); }
protected void fallbackModelRenderer( Map<String, Object> model, HttpServletRequest request, HttpServletResponse response) throws Exception { Request tilesRequest = super.createTilesRequest(request, response); ApplicationContext applicationContext = tilesRequest.getApplicationContext(); TilesContainer container = TilesAccess.getContainer(applicationContext); if (container == null) { throw new ServletException("Tiles container is not initialized. " + "Have you added a TilesConfigurer to your web application context?"); } exposeModelAsRequestAttributes(model, request); JstlUtils.exposeLocalizationContext(new RequestContext(request, getServletContext())); Definition definition = container.getDefinition(getUrl(), tilesRequest); container.render(definition, tilesRequest); } }
@Override public void doExecute(String location, ActionInvocation invocation) throws Exception { ServletContext context = ServletActionContext.getServletContext(); HttpServletRequest request = ServletActionContext.getRequest(); HttpServletResponse response = ServletActionContext.getResponse(); ApplicationContext applicationContext = ServletUtil.getApplicationContext(context); ServletRequest servletRequest = new ServletRequest(applicationContext, request, response); TilesContainer container = initTilesContainer(applicationContext, servletRequest); container.startContext(servletRequest); container.render(location, servletRequest); }