org.springframework.web.servlet.view

Class AbstractTemplateView

    • Field Detail

      • SPRING_MACRO_REQUEST_CONTEXT_ATTRIBUTE

        public static final java.lang.String SPRING_MACRO_REQUEST_CONTEXT_ATTRIBUTE
        Variable name of the RequestContext instance in the template model, available to Spring's macros: e.g. for creating BindStatus objects.
        See Also:
        Constant Field Values
    • Constructor Detail

      • AbstractTemplateView

        public AbstractTemplateView()
    • Method Detail

      • setExposeRequestAttributes

        public void setExposeRequestAttributes(boolean exposeRequestAttributes)
        Set whether all request attributes should be added to the model prior to merging with the template. Default is "false".
      • setAllowRequestOverride

        public void setAllowRequestOverride(boolean allowRequestOverride)
        Set whether HttpServletRequest attributes are allowed to override (hide) controller generated model attributes of the same name. Default is "false", which causes an exception to be thrown if request attributes of the same name as model attributes are found.
      • setExposeSessionAttributes

        public void setExposeSessionAttributes(boolean exposeSessionAttributes)
        Set whether all HttpSession attributes should be added to the model prior to merging with the template. Default is "false".
      • setAllowSessionOverride

        public void setAllowSessionOverride(boolean allowSessionOverride)
        Set whether HttpSession attributes are allowed to override (hide) controller generated model attributes of the same name. Default is "false", which causes an exception to be thrown if session attributes of the same name as model attributes are found.
      • setExposeSpringMacroHelpers

        public void setExposeSpringMacroHelpers(boolean exposeSpringMacroHelpers)
        Set whether to expose a RequestContext for use by Spring's macro library, under the name "springMacroRequestContext". Default is "true".

        Currently needed for Spring's FreeMarker default macros. Note that this is not required for templates that use HTML forms unless you wish to take advantage of the Spring helper macros.

        See Also:
        SPRING_MACRO_REQUEST_CONTEXT_ATTRIBUTE
      • renderMergedOutputModel

        protected final void renderMergedOutputModel(java.util.Map<java.lang.String,java.lang.Object> model,
                                                     HttpServletRequest request,
                                                     HttpServletResponse response)
                                              throws java.lang.Exception
        Description copied from class: AbstractView
        Subclasses must implement this method to actually render the view.

        The first step will be preparing the request: In the JSP case, this would mean setting model objects as request attributes. The second step will be the actual rendering of the view, for example including the JSP via a RequestDispatcher.

        Specified by:
        renderMergedOutputModel in class AbstractView
        Parameters:
        model - combined output Map (never null), with dynamic values taking precedence over static attributes
        request - current HTTP request
        response - current HTTP response
        Throws:
        java.lang.Exception - if rendering failed
      • applyContentType

        protected void applyContentType(HttpServletResponse response)
        Apply this view's content type as specified in the "contentType" bean property to the given response.

        Only applies the view's contentType if no content type has been set on the response before. This allows handlers to override the default content type beforehand.

        Parameters:
        response - current HTTP response
        See Also:
        AbstractView.setContentType(java.lang.String)
      • renderMergedTemplateModel

        protected abstract void renderMergedTemplateModel(java.util.Map<java.lang.String,java.lang.Object> model,
                                                          HttpServletRequest request,
                                                          HttpServletResponse response)
                                                   throws java.lang.Exception
        Subclasses must implement this method to actually render the view.
        Parameters:
        model - combined output Map, with request attributes and session attributes merged into it if required
        request - current HTTP request
        response - current HTTP response
        Throws:
        java.lang.Exception - if rendering failed