org.apache.struts2.views.freemarker
Class FreemarkerManager
java.lang.Object
  
org.apache.struts2.views.freemarker.FreemarkerManager
public class FreemarkerManager
- extends Object
 
Static Configuration Manager for the FreemarkerResult's configuration
 
 Possible extension points are :-
 
   - createConfiguration method
 
   - loadSettings method
 
   - getTemplateLoader method
 
   - populateContext method
 
 
 
  createConfiguration method 
 Create a freemarker Configuration.
 
  loadSettings method 
 Load freemarker settings, default to freemarker.properties (if found in classpath)
 
  getTemplateLoader method
 create a freemarker TemplateLoader that loads freemarker template in the following order :-
 
   - path defined in ServletContext init parameter named 'templatePath' or 'TemplatePath' (must be an absolute path)
 
   - webapp classpath
 
   - struts's static folder (under [STRUT2_SOURCE]/org/apache/struts2/static/
 
 
 
  populateContext method
 populate the created model.
 
 
| 
Method Summary | 
protected  ScopesHashModel | 
buildScopesHashModel(ServletContext servletContext,
                     HttpServletRequest request,
                     HttpServletResponse response,
                     freemarker.template.ObjectWrapper wrapper,
                     ValueStack stack)
 
            | 
 freemarker.template.SimpleHash | 
buildTemplateModel(ValueStack stack,
                   Object action,
                   ServletContext servletContext,
                   HttpServletRequest request,
                   HttpServletResponse response,
                   freemarker.template.ObjectWrapper wrapper)
 
            | 
protected  freemarker.template.Configuration | 
createConfiguration(ServletContext servletContext)
 
          Create the instance of the freemarker Configuration object. | 
 freemarker.template.Configuration | 
getConfiguration(ServletContext servletContext)
 
            | 
protected  freemarker.ext.beans.BeansWrapper | 
getObjectWrapper()
 
            | 
protected  freemarker.cache.TemplateLoader | 
getTemplateLoader(ServletContext servletContext)
 
          The default template loader is a MultiTemplateLoader which includes
 a ClassTemplateLoader and a WebappTemplateLoader (and a FileTemplateLoader depending on
 the init-parameter 'TemplatePath'). | 
protected  void | 
loadSettings(ServletContext servletContext,
             freemarker.template.Configuration configuration)
 
          Load the settings from the /freemarker.properties file on the classpath | 
protected  void | 
populateContext(ScopesHashModel model,
                ValueStack stack,
                Object action,
                HttpServletRequest request,
                HttpServletResponse response)
 
            | 
 void | 
setCacheBeanWrapper(String val)
 
            | 
 void | 
setContainer(Container container)
 
            | 
 void | 
setEncoding(String encoding)
 
            | 
 void | 
setMruMaxStrongSize(String size)
 
            | 
 void | 
setWrapperAltMap(String val)
 
            | 
 
| Methods inherited from class java.lang.Object | 
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | 
 
LOG
private static final Logger LOG
CONFIG_SERVLET_CONTEXT_KEY
public static final String CONFIG_SERVLET_CONTEXT_KEY
- See Also:
 - Constant Field Values
 
KEY_EXCEPTION
public static final String KEY_EXCEPTION
- See Also:
 - Constant Field Values
 
ATTR_APPLICATION_MODEL
private static final String ATTR_APPLICATION_MODEL
- See Also:
 - Constant Field Values
 
ATTR_JSP_TAGLIBS_MODEL
private static final String ATTR_JSP_TAGLIBS_MODEL
- See Also:
 - Constant Field Values
 
ATTR_REQUEST_MODEL
private static final String ATTR_REQUEST_MODEL
- See Also:
 - Constant Field Values
 
ATTR_REQUEST_PARAMETERS_MODEL
private static final String ATTR_REQUEST_PARAMETERS_MODEL
- See Also:
 - Constant Field Values
 
KEY_APPLICATION
public static final String KEY_APPLICATION
- See Also:
 - Constant Field Values
 
KEY_REQUEST_MODEL
public static final String KEY_REQUEST_MODEL
- See Also:
 - Constant Field Values
 
KEY_SESSION_MODEL
public static final String KEY_SESSION_MODEL
- See Also:
 - Constant Field Values
 
KEY_JSP_TAGLIBS
public static final String KEY_JSP_TAGLIBS
- See Also:
 - Constant Field Values
 
KEY_REQUEST_PARAMETER_MODEL
public static final String KEY_REQUEST_PARAMETER_MODEL
- See Also:
 - Constant Field Values
 
encoding
private String encoding
altMapWrapper
private boolean altMapWrapper
cacheBeanWrapper
private boolean cacheBeanWrapper
mruMaxStrongSize
private int mruMaxStrongSize
tagLibraries
private Map<String,TagLibrary> tagLibraries
FreemarkerManager
public FreemarkerManager()
setEncoding
public void setEncoding(String encoding)
 
setWrapperAltMap
public void setWrapperAltMap(String val)
 
setCacheBeanWrapper
public void setCacheBeanWrapper(String val)
 
setMruMaxStrongSize
public void setMruMaxStrongSize(String size)
 
setContainer
public void setContainer(Container container)
 
getConfiguration
public freemarker.template.Configuration getConfiguration(ServletContext servletContext)
                                                   throws freemarker.template.TemplateException
- Throws:
 freemarker.template.TemplateException
 
buildScopesHashModel
protected ScopesHashModel buildScopesHashModel(ServletContext servletContext,
                                               HttpServletRequest request,
                                               HttpServletResponse response,
                                               freemarker.template.ObjectWrapper wrapper,
                                               ValueStack stack)
 
populateContext
protected void populateContext(ScopesHashModel model,
                               ValueStack stack,
                               Object action,
                               HttpServletRequest request,
                               HttpServletResponse response)
 
getObjectWrapper
protected freemarker.ext.beans.BeansWrapper getObjectWrapper()
 
getTemplateLoader
protected freemarker.cache.TemplateLoader getTemplateLoader(ServletContext servletContext)
- The default template loader is a MultiTemplateLoader which includes
 a ClassTemplateLoader and a WebappTemplateLoader (and a FileTemplateLoader depending on
 the init-parameter 'TemplatePath').
 
 The ClassTemplateLoader will resolve fully qualified template includes
 that begin with a slash. for example /com/company/template/common.ftl
 
 The WebappTemplateLoader attempts to resolve templates relative to the web root folder
 
 
createConfiguration
protected freemarker.template.Configuration createConfiguration(ServletContext servletContext)
                                                         throws freemarker.template.TemplateException
- Create the instance of the freemarker Configuration object.
 
 this implementation
 
 - obtains the default configuration from Configuration.getDefaultConfiguration()
 
 - sets up template loading from a ClassTemplateLoader and a WebappTemplateLoader
 
 - sets up the object wrapper to be the BeansWrapper
 
 - loads settings from the classpath file /freemarker.properties
 
 
- Parameters:
 servletContext - 
- Throws:
 freemarker.template.TemplateException
 
 
loadSettings
protected void loadSettings(ServletContext servletContext,
                            freemarker.template.Configuration configuration)
- Load the settings from the /freemarker.properties file on the classpath
- See Also:
 for the definition of valid settings
 
 
buildTemplateModel
public freemarker.template.SimpleHash buildTemplateModel(ValueStack stack,
                                                         Object action,
                                                         ServletContext servletContext,
                                                         HttpServletRequest request,
                                                         HttpServletResponse response,
                                                         freemarker.template.ObjectWrapper wrapper)
 
Copyright © 2000-2008 Apache Software Foundation. All Rights Reserved.