Class TapestryFilter

java.lang.Object
org.apache.tapestry5.http.TapestryFilter
All Implemented Interfaces:
javax.servlet.Filter
Direct Known Subclasses:
TapestryFilter, TapestrySpringFilter

public class TapestryFilter extends Object implements javax.servlet.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.)
In addition, a JVM system property affects configuration: 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 final String
    Key under which the Tapestry IoC Registry is stored in the ServletContext.
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    final void
    Shuts down and discards the registry.
    protected void
    destroy(Registry registry)
    Invoked from destroy() to allow subclasses to add additional shutdown logic to the filter.
    final void
    doFilter(javax.servlet.ServletRequest request, javax.servlet.ServletResponse response, javax.servlet.FilterChain chain)
     
    protected final javax.servlet.FilterConfig
     
    final void
    init(javax.servlet.FilterConfig filterConfig)
    Initializes the filter using the TapestryAppInitializer.
    protected void
    init(Registry registry)
    Invoked from init(FilterConfig) after the Registry has been created, to allow any additional initialization to occur.
    protected Class[]
    provideExtraModuleClasses(javax.servlet.ServletContext context)
    Overridden in subclasses to provide additional module classes beyond those normally located.
    protected ModuleDef[]
    provideExtraModuleDefs(javax.servlet.ServletContext context)
    Overridden in subclasses to provide additional module definitions beyond those normally located.
    final void
    runFilter(javax.servlet.ServletRequest request, javax.servlet.ServletResponse response, javax.servlet.FilterChain chain)
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

  • Constructor Details

  • Method Details

    • init

      public final void init(javax.servlet.FilterConfig filterConfig) throws javax.servlet.ServletException
      Initializes the filter using the TapestryAppInitializer. The application name is the capitalization of the filter name (as specified in web.xml).
      Specified by:
      init in interface javax.servlet.Filter
      Throws:
      javax.servlet.ServletException
    • getFilterConfig

      protected final javax.servlet.FilterConfig getFilterConfig()
    • init

      protected void init(Registry registry) throws javax.servlet.ServletException
      Invoked from init(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:
      javax.servlet.ServletException
    • provideExtraModuleDefs

      protected ModuleDef[] provideExtraModuleDefs(javax.servlet.ServletContext context)
      Overridden in subclasses to provide additional module definitions beyond those normally located. This implementation returns an empty array.
    • provideExtraModuleClasses

      protected Class[] provideExtraModuleClasses(javax.servlet.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(javax.servlet.ServletRequest request, javax.servlet.ServletResponse response, javax.servlet.FilterChain chain) throws IOException, javax.servlet.ServletException
      Throws:
      IOException
      javax.servlet.ServletException
    • doFilter

      public final void doFilter(javax.servlet.ServletRequest request, javax.servlet.ServletResponse response, javax.servlet.FilterChain chain) throws IOException, javax.servlet.ServletException
      Specified by:
      doFilter in interface javax.servlet.Filter
      Throws:
      IOException
      javax.servlet.ServletException
    • destroy

      public final void destroy()
      Shuts down and discards the registry. Invokes destroy(org.apache.tapestry5.ioc.Registry) to allow subclasses to perform any shutdown logic, then shuts down the registry, and removes it from the ServletContext.
      Specified by:
      destroy in interface javax.servlet.Filter
    • destroy

      protected void destroy(Registry registry)
      Invoked from destroy() to allow subclasses to add additional shutdown logic to the filter. The Registry will be shutdown after this call. This implementation does nothing, and may be overridden in subclasses.
      Parameters:
      registry -