public class FreemarkerDecoratorServlet
extends freemarker.ext.servlet.FreemarkerServlet
This is a SiteMesh FreeMarker view servlet.
It overrides the SiteMesh servlet to rely on the Freemarker Manager in Struts instead of creating it's own manager
| Modifier and Type | Field and Description |
|---|---|
protected freemarker.template.Configuration |
config |
protected boolean |
debug |
protected FreemarkerManager |
freemarkerManager |
protected boolean |
nocache |
static long |
serialVersionUID |
protected String |
templatePath |
INIT_PARAM_BUFFER_SIZE, INIT_PARAM_CLASSPATH_TLDS, INIT_PARAM_CONTENT_TYPE, INIT_PARAM_EXCEPTION_ON_MISSING_TEMPLATE, INIT_PARAM_META_INF_TLD_LOCATIONS, INIT_PARAM_NO_CACHE, INIT_PARAM_TEMPLATE_PATH, KEY_APPLICATION, KEY_APPLICATION_PRIVATE, KEY_INCLUDE, KEY_JSP_TAGLIBS, KEY_REQUEST, KEY_REQUEST_PARAMETERS, KEY_REQUEST_PRIVATE, KEY_SESSION, META_INF_TLD_LOCATION_CLASSPATH, META_INF_TLD_LOCATION_CLEAR, META_INF_TLD_LOCATION_WEB_INF_PER_LIB_JARS, SYSTEM_PROPERTY_CLASSPATH_TLDS, SYSTEM_PROPERTY_META_INF_TLD_SOURCES| Constructor and Description |
|---|
FreemarkerDecoratorServlet() |
| Modifier and Type | Method and Description |
|---|---|
protected freemarker.template.Configuration |
createConfiguration()
Create the instance of the freemarker Configuration object.
|
protected Locale |
deduceLocale(String templatePath,
javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response)
Returns the locale used for the
Configuration.getTemplate(String, Locale) call. |
void |
doGet(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response) |
void |
doPost(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response) |
void |
init() |
protected boolean |
preTemplateProcess(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response,
freemarker.template.Template template,
freemarker.template.TemplateModel templateModel)
Called before the execution is passed to template.process().
|
createDefaultClassPathTlds, createDefaultMetaInfTldSources, createDefaultObjectWrapper, createModel, createObjectWrapper, createRequestParametersHashModel, createTaglibFactory, createTemplateLoader, getConfiguration, getObjectWrapper, getTemplatePath, initializeServletContext, initializeSession, postTemplateProcess, preprocessRequest, requestUrlToTemplatePath, setConfigurationDefaultsdoDelete, doHead, doOptions, doPut, doTrace, getLastModified, service, servicepublic static final long serialVersionUID
protected FreemarkerManager freemarkerManager
protected String templatePath
protected boolean nocache
protected boolean debug
protected freemarker.template.Configuration config
public void init()
throws javax.servlet.ServletException
init in class freemarker.ext.servlet.FreemarkerServletjavax.servlet.ServletExceptionpublic void doGet(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response)
throws javax.servlet.ServletException,
IOException
doGet in class freemarker.ext.servlet.FreemarkerServletjavax.servlet.ServletExceptionIOExceptionpublic void doPost(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response)
throws javax.servlet.ServletException,
IOException
doPost in class freemarker.ext.servlet.FreemarkerServletjavax.servlet.ServletExceptionIOExceptionprotected Locale deduceLocale(String templatePath, javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)
Configuration.getTemplate(String, Locale) call.
The base implementation simply returns the locale setting of the
configuration. Override this method to provide different behaviour, i.e.
to use the locale indicated in the request.deduceLocale in class freemarker.ext.servlet.FreemarkerServletprotected freemarker.template.Configuration createConfiguration()
Create the instance of the freemarker Configuration object.
this implementation
createConfiguration in class freemarker.ext.servlet.FreemarkerServletprotected boolean preTemplateProcess(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response,
freemarker.template.Template template,
freemarker.template.TemplateModel templateModel)
throws javax.servlet.ServletException,
IOException
Called before the execution is passed to template.process(). This is a generic hook you might use in subclasses to perform a specific action before the template is processed. By default does nothing. A typical action to perform here is to inject application-specific objects into the model root
Example: Expose the Serlvet context path as "baseDir" for all templates:
((SimpleHash) data).put("baseDir", request.getContextPath() + "/");
return true;
preTemplateProcess in class freemarker.ext.servlet.FreemarkerServletrequest - the actual HTTP requestresponse - the actual HTTP responsetemplate - the template that will get executedjavax.servlet.ServletExceptionIOExceptionFreemarkerServlet.preTemplateProcess(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, freemarker.template.Template, freemarker.template.TemplateModel)Copyright © 2000–2017 Apache Software Foundation. All rights reserved.