Package org.apache.tapestry5.http
Class TapestryFilter
- java.lang.Object
-
- org.apache.tapestry5.http.TapestryFilter
-
- All Implemented Interfaces:
Filter
- Direct Known Subclasses:
TapestryFilter,TapestrySpringFilter
public class TapestryFilter extends java.lang.Object implements Filter
The TapestryFilter is responsible for intercepting all requests into the web application. It identifies the requests that are relevant to Tapestry, and lets the servlet container handle the rest. It is also responsible for initializing Tapestry. The application is primarily configured via context-level init parameters.- tapestry.app-package
- The application package (used to search for pages, components, etc.)
tapestry.execution-mode(with default value "production"). This property is a comma-separated list of execution modes. For each mode, an additional init parameter is checked for:tapestry.mode-modules; this is a comma-separated list of module class names to load. In this way, more precise control over the available modules can be obtained which is often needed during testing.
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringREGISTRY_CONTEXT_NAMEKey under which the Tapestry IoCRegistryis stored in the ServletContext.
-
Constructor Summary
Constructors Constructor Description TapestryFilter()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voiddestroy()Shuts down and discards the registry.protected voiddestroy(Registry registry)Invoked fromdestroy()to allow subclasses to add additional shutdown logic to the filter.voiddoFilter(ServletRequest request, ServletResponse response, FilterChain chain)protected FilterConfiggetFilterConfig()voidinit(FilterConfig filterConfig)Initializes the filter using theTapestryAppInitializer.protected voidinit(Registry registry)Invoked frominit(FilterConfig)after the Registry has been created, to allow any additional initialization to occur.protected java.lang.Class[]provideExtraModuleClasses(ServletContext context)Overridden in subclasses to provide additional module classes beyond those normally located.protected ModuleDef[]provideExtraModuleDefs(ServletContext context)Overridden in subclasses to provide additional module definitions beyond those normally located.voidrunFilter(ServletRequest request, ServletResponse response, FilterChain chain)
-
-
-
Field Detail
-
REGISTRY_CONTEXT_NAME
public static final java.lang.String REGISTRY_CONTEXT_NAME
Key under which the Tapestry IoCRegistryis stored in the ServletContext. This allows other code, beyond Tapestry, to obtain the Registry and, from it, any Tapestry services. Such code should be careful about invokingRegistry.cleanupThread()appropriately.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
TapestryFilter
public TapestryFilter()
-
-
Method Detail
-
init
public final void init(FilterConfig filterConfig) throws ServletException
Initializes the filter using theTapestryAppInitializer. The application name is the capitalization of the filter name (as specified in web.xml).- Specified by:
initin interfaceFilter- Throws:
ServletException
-
getFilterConfig
protected final FilterConfig getFilterConfig()
-
init
protected void init(Registry registry) throws ServletException
Invoked frominit(FilterConfig)after the Registry has been created, to allow any additional initialization to occur. This implementation does nothing, and my be overridden in subclasses.- Parameters:
registry- from which services may be extracted- Throws:
ServletException
-
provideExtraModuleDefs
protected ModuleDef[] provideExtraModuleDefs(ServletContext context)
Overridden in subclasses to provide additional module definitions beyond those normally located. This implementation returns an empty array.
-
provideExtraModuleClasses
protected java.lang.Class[] provideExtraModuleClasses(ServletContext context)
Overridden in subclasses to provide additional module classes beyond those normally located. This implementation returns an empty array.- Since:
- 5.3
-
runFilter
public final void runFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws java.io.IOException, ServletException
- Throws:
java.io.IOExceptionServletException
-
doFilter
public final void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws java.io.IOException, ServletException
- Specified by:
doFilterin interfaceFilter- Throws:
java.io.IOExceptionServletException
-
destroy
public final void destroy()
Shuts down and discards the registry. Invokesdestroy(org.apache.tapestry5.ioc.Registry)to allow subclasses to perform any shutdown logic, then shuts down the registry, and removes it from the ServletContext.
-
-