public class FreemarkerManager extends Object
Static Configuration Manager for the FreemarkerResult's configuration
Possible extension points are:
createConfiguration method
Create a freemarker Configuration.
loadSettings method
Load freemarker settings, default to freemarker.properties (if found in classpath)
createTemplateLoader method
create a freemarker TemplateLoader that loads freemarker template in the following order:
populateContext method
populate the created model.
Constructor and Description |
---|
FreemarkerManager() |
Modifier and Type | Method and Description |
---|---|
void |
addSetting(String name,
String value) |
protected ScopesHashModel |
buildScopesHashModel(javax.servlet.ServletContext servletContext,
javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response,
freemarker.template.ObjectWrapper wrapper,
ValueStack stack) |
ScopesHashModel |
buildTemplateModel(ValueStack stack,
Object action,
javax.servlet.ServletContext servletContext,
javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response,
freemarker.template.ObjectWrapper wrapper) |
protected void |
configureTemplateLoader(freemarker.cache.TemplateLoader templateLoader)
Sets the Freemarker Configuration's template loader with the FreemarkerThemeTemplateLoader
at the top.
|
protected freemarker.template.Configuration |
createConfiguration(javax.servlet.ServletContext servletContext)
Create the instance of the freemarker Configuration object.
|
protected freemarker.template.ObjectWrapper |
createObjectWrapper(javax.servlet.ServletContext servletContext) |
protected freemarker.cache.TemplateLoader |
createTemplateLoader(javax.servlet.ServletContext servletContext,
String templatePath)
Create the template loader.
|
freemarker.template.Configuration |
getConfig() |
freemarker.template.Configuration |
getConfiguration(javax.servlet.ServletContext servletContext) |
String |
getContentType() |
boolean |
getDebug() |
protected freemarker.template.Version |
getFreemarkerVersion(javax.servlet.ServletContext servletContext) |
boolean |
getNocache() |
boolean |
getNoCharsetInContentType() |
String |
getTemplatePath() |
freemarker.template.ObjectWrapper |
getWrapper() |
void |
init(javax.servlet.ServletContext servletContext) |
protected void |
loadSettings(javax.servlet.ServletContext servletContext)
Load the settings from the /freemarker.properties file on the classpath
|
protected void |
populateContext(ScopesHashModel model,
ValueStack stack,
Object action,
javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response) |
void |
setCacheBeanWrapper(String val) |
void |
setContainer(Container container) |
void |
setEncoding(String encoding) |
void |
setFileManagerFactory(FileManagerFactory fileManagerFactory) |
void |
setMruMaxStrongSize(String size) |
void |
setTemplateUpdateDelay(String delay) |
void |
setThemeTemplateLoader(FreemarkerThemeTemplateLoader themeTemplateLoader) |
void |
setWrapperAltMap(String val) |
public static final String INITPARAM_TEMPLATE_PATH
public static final String INITPARAM_NOCACHE
public static final String INITPARAM_CONTENT_TYPE
public static final String DEFAULT_CONTENT_TYPE
public static final String INITPARAM_DEBUG
public static final String KEY_REQUEST
public static final String KEY_INCLUDE
public static final String KEY_REQUEST_PRIVATE
public static final String KEY_REQUEST_PARAMETERS
public static final String KEY_SESSION
public static final String KEY_APPLICATION
public static final String KEY_APPLICATION_PRIVATE
public static final String KEY_JSP_TAGLIBS
public static final String ATTR_TEMPLATE_MODEL
public static final String KEY_REQUEST_PARAMETERS_STRUTS
public static final String KEY_HASHMODEL_PRIVATE
public static final String EXPIRATION_DATE
public static final String CONFIG_SERVLET_CONTEXT_KEY
public static final String KEY_EXCEPTION
protected String templatePath
protected boolean nocache
protected boolean debug
protected freemarker.template.Configuration config
protected freemarker.template.ObjectWrapper wrapper
protected String contentType
protected boolean noCharsetInContentType
protected String encoding
protected boolean altMapWrapper
protected boolean cacheBeanWrapper
protected int mruMaxStrongSize
protected String templateUpdateDelay
protected Map<String,TagLibraryModelProvider> tagLibraries
public void setEncoding(String encoding)
public void setWrapperAltMap(String val)
public void setCacheBeanWrapper(String val)
public void setMruMaxStrongSize(String size)
public void setTemplateUpdateDelay(String delay)
public void setContainer(Container container)
public void setFileManagerFactory(FileManagerFactory fileManagerFactory)
public void setThemeTemplateLoader(FreemarkerThemeTemplateLoader themeTemplateLoader)
public boolean getNoCharsetInContentType()
public String getTemplatePath()
public boolean getNocache()
public boolean getDebug()
public freemarker.template.Configuration getConfig()
public freemarker.template.ObjectWrapper getWrapper()
public String getContentType()
public freemarker.template.Configuration getConfiguration(javax.servlet.ServletContext servletContext)
public void init(javax.servlet.ServletContext servletContext) throws freemarker.template.TemplateException
freemarker.template.TemplateException
protected void configureTemplateLoader(freemarker.cache.TemplateLoader templateLoader)
templateLoader
- the template loaderFreemarkerThemeTemplateLoader
protected freemarker.template.Configuration createConfiguration(javax.servlet.ServletContext servletContext) throws freemarker.template.TemplateException
this implementation
servletContext
- the servlet contextfreemarker.template.TemplateException
- in case of errors during creating the configurationprotected freemarker.template.Version getFreemarkerVersion(javax.servlet.ServletContext servletContext)
protected ScopesHashModel buildScopesHashModel(javax.servlet.ServletContext servletContext, javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, freemarker.template.ObjectWrapper wrapper, ValueStack stack)
protected freemarker.template.ObjectWrapper createObjectWrapper(javax.servlet.ServletContext servletContext)
protected freemarker.cache.TemplateLoader createTemplateLoader(javax.servlet.ServletContext servletContext, String templatePath)
ClassTemplateLoader
if the template path starts with "class://",
a FileTemplateLoader
if the template path starts with "file://",
and a WebappTemplateLoader
otherwise.servletContext
- the servlet pathtemplatePath
- the template path to create a loader forprotected void loadSettings(javax.servlet.ServletContext servletContext)
servletContext
- the servlet contextfor the definition of valid settings
public void addSetting(String name, String value) throws freemarker.template.TemplateException
freemarker.template.TemplateException
public ScopesHashModel buildTemplateModel(ValueStack stack, Object action, javax.servlet.ServletContext servletContext, javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, freemarker.template.ObjectWrapper wrapper)
protected void populateContext(ScopesHashModel model, ValueStack stack, Object action, javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)
Copyright © 2000–2020 Apache Software Foundation. All rights reserved.