Class GrailsFreeMarkerView

  • All Implemented Interfaces:
    org.springframework.beans.factory.Aware, org.springframework.beans.factory.BeanNameAware, org.springframework.beans.factory.InitializingBean, org.springframework.context.ApplicationContextAware, org.springframework.web.context.ServletContextAware, org.springframework.web.servlet.View

    public class GrailsFreeMarkerView
    extends org.springframework.web.servlet.view.freemarker.FreeMarkerView
    • Field Summary

      Fields 
      Modifier and Type Field Description
      org.springframework.web.servlet.view.freemarker.FreeMarkerConfig freeMarkerConfigurer  
      protected org.apache.commons.logging.Log log  
      • Fields inherited from class org.springframework.web.servlet.view.AbstractTemplateView

        SPRING_MACRO_REQUEST_CONTEXT_ATTRIBUTE
      • Fields inherited from class org.springframework.web.servlet.view.AbstractView

        DEFAULT_CONTENT_TYPE
      • Fields inherited from class org.springframework.context.support.ApplicationObjectSupport

        logger
      • Fields inherited from interface org.springframework.web.servlet.View

        PATH_VARIABLES, RESPONSE_STATUS_ATTRIBUTE, SELECTED_CONTENT_TYPE
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      boolean checkResource​(java.util.Locale locale)
      Check that the FreeMarker template used for this view exists and is valid.
      protected void exposeHelpers​(java.util.Map<java.lang.String,​java.lang.Object> model, javax.servlet.http.HttpServletRequest request)  
      protected void initServletContext​(javax.servlet.ServletContext servletContext)
      called on instantiation, overrides the super default so that it uses the FreeMarkerConfigurer that is injected into this without doing a new TaglibFactory each time.
      • Methods inherited from class org.springframework.web.servlet.view.freemarker.FreeMarkerView

        autodetectConfiguration, buildTemplateModel, doRender, getConfiguration, getEncoding, getObjectWrapper, getTemplate, getTemplate, obtainConfiguration, processTemplate, renderMergedTemplateModel, setConfiguration, setEncoding
      • Methods inherited from class org.springframework.web.servlet.view.AbstractTemplateView

        applyContentType, renderMergedOutputModel, setAllowRequestOverride, setAllowSessionOverride, setExposeRequestAttributes, setExposeSessionAttributes, setExposeSpringMacroHelpers
      • Methods inherited from class org.springframework.web.servlet.view.AbstractUrlBasedView

        afterPropertiesSet, getUrl, isUrlRequired, setUrl, toString
      • Methods inherited from class org.springframework.web.servlet.view.AbstractView

        addStaticAttribute, createMergedOutputModel, createRequestContext, createTemporaryOutputStream, exposeModelAsRequestAttributes, formatViewName, generatesDownloadContent, getAttributesMap, getBeanName, getContentType, getRequestContextAttribute, getRequestToExpose, getStaticAttributes, isExposePathVariables, prepareResponse, render, setAttributes, setAttributesCSV, setAttributesMap, setBeanName, setContentType, setExposeContextBeansAsAttributes, setExposedContextBeanNames, setExposePathVariables, setRequestContextAttribute, setResponseContentType, writeToResponse
      • Methods inherited from class org.springframework.web.context.support.WebApplicationObjectSupport

        getServletContext, getTempDir, getWebApplicationContext, initApplicationContext, isContextRequired, setServletContext
      • Methods inherited from class org.springframework.context.support.ApplicationObjectSupport

        getApplicationContext, getMessageSourceAccessor, initApplicationContext, obtainApplicationContext, requiredContextClass, setApplicationContext
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Field Detail

      • log

        protected final org.apache.commons.logging.Log log
      • freeMarkerConfigurer

        public org.springframework.web.servlet.view.freemarker.FreeMarkerConfig freeMarkerConfigurer
    • Constructor Detail

      • GrailsFreeMarkerView

        public GrailsFreeMarkerView()
    • Method Detail

      • exposeHelpers

        protected void exposeHelpers​(java.util.Map<java.lang.String,​java.lang.Object> model,
                                     javax.servlet.http.HttpServletRequest request)
                              throws java.lang.Exception
        Overrides:
        exposeHelpers in class org.springframework.web.servlet.view.freemarker.FreeMarkerView
        Throws:
        java.lang.Exception
      • initServletContext

        protected void initServletContext​(javax.servlet.ServletContext servletContext)
                                   throws org.springframework.beans.BeansException
        called on instantiation, overrides the super default so that it uses the FreeMarkerConfigurer that is injected into this without doing a new TaglibFactory each time. We have grails taglibs and dont need jsp taglibs the freemarker config already has one setup also, the old way only allowed 1 FreeMarkerConfig bean. This lets you have multiple FreeMarkerConfigs if need be. we don't need the
        Overrides:
        initServletContext in class org.springframework.web.servlet.view.freemarker.FreeMarkerView
        Throws:
        org.springframework.beans.BeansException
      • checkResource

        public boolean checkResource​(java.util.Locale locale)
                              throws java.lang.Exception
        Check that the FreeMarker template used for this view exists and is valid.

        Can be overridden to customize the behavior, for example in case of multiple templates to be rendered into a single view.

        Overrides:
        checkResource in class org.springframework.web.servlet.view.freemarker.FreeMarkerView
        Throws:
        java.lang.Exception