Class VelocityViewFilter
java.lang.Object
org.apache.velocity.tools.view.VelocityViewFilter
- All Implemented Interfaces:
javax.servlet.Filter
A filter to ensure VelocityTools Toolboxes are
available in the request/session/application scopes. This
can simplify the process of integration with other frameworks.
VelocityViewFilter supports the following configuration parameters in web.xml:
- org.apache.velocity.tools
- Path and name of the toolbox configuration file. The path must be relative to the web application root directory. If this parameter is not found, the servlet will check for a toolbox file at '/WEB-INF/tools.xml'.
- org.apache.velocity.properties
- Path and name of the Velocity configuration file. The path must be relative to the web application root directory. If this parameter is not present, Velocity will check for a properties file at '/WEB-INF/velocity.properties'. If no file is found there, then Velocity is initialized with the settings in the classpath at 'org.apache.velocity.tools.view.velocity.properties'.
- org.apache.velocity.tools.loadDefaults
- By default, this is
false. If set totrue, then the default toolbox configuration will be added prior to your (if any) custom configuration. - org.apache.velocity.tools.cleanConfiguration
- By default, this is
false. If set totrue, then then the final toolbox configuration (the combination of any custom one(s) provided by yourself and/or the default configuration(s)) will have all invalid tools, properties, and/or data removed prior to configuring the ToolboxFactory for this servlet by aConfigurationCleaner - org.apache.velocity.tools.shared.config
- By default, this is
true. If set tofalse, then theVelocityViewused by this filter will not be shared with other VelocityViewFilters,VelocityViewServlets or org.apache.velocity.tools.view.jsp.VelocityViewTag's in the application. - org.apache.velocity.tools.context.key
- If you set a value for this property, this filter will create
and prepare a
ViewToolContextfor each request, and then place it into the request attributes under the key you set. This is primarily for those who use this filter WITHOUT sharing a config (i.e. non-shared VelocityView), letting them retrieve the context as the request attribute. - org.apache.velocity.tools.view.class
- Allows to specify a custom class (inheriting from VelocityView) as the View class.
- Version:
- $Id: VelocityViewFilter.java 611011 2008-01-11 01:32:59Z nbubna $
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected org.apache.velocity.context.ContextcreateContext(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response) voiddestroy()voiddoFilter(javax.servlet.ServletRequest request, javax.servlet.ServletResponse response, javax.servlet.FilterChain chain) Simply prepares the request (and/or session) toolbox(es) for other filters, servlets or whatnot to use.protected StringfindInitParameter(String key) Looks up an init parameter with the specified key in either the FilterConfig or, failing that, in the ServletContext.protected Stringprotected javax.servlet.FilterConfigprotected VelocityViewvoidinit(javax.servlet.FilterConfig config) Initializes VelocityView used to process requests.
-
Field Details
-
CONTEXT_KEY
- See Also:
-
-
Constructor Details
-
VelocityViewFilter
public VelocityViewFilter()
-
-
Method Details
-
init
public void init(javax.servlet.FilterConfig config) throws javax.servlet.ServletException Initializes VelocityView used to process requests. Called by the servlet container on loading.
- Specified by:
initin interfacejavax.servlet.Filter- Parameters:
config- filter configuation- Throws:
javax.servlet.ServletException
-
getFilterConfig
protected javax.servlet.FilterConfig getFilterConfig() -
getVelocityView
-
getContextKey
-
findInitParameter
-
doFilter
public void doFilter(javax.servlet.ServletRequest request, javax.servlet.ServletResponse response, javax.servlet.FilterChain chain) throws IOException, javax.servlet.ServletException Simply prepares the request (and/or session) toolbox(es) for other filters, servlets or whatnot to use. If a context key has been provided in the init-params of the filter or webapp, then this will also create aViewToolContextand put it in the request attributes under that key.- Specified by:
doFilterin interfacejavax.servlet.Filter- Throws:
IOExceptionjavax.servlet.ServletException
-
createContext
protected org.apache.velocity.context.Context createContext(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response) -
destroy
public void destroy()- Specified by:
destroyin interfacejavax.servlet.Filter
-