Save This Page
Home » spring-framework-2.5.4 » org.springframework » web » filter » [javadoc | source]
org.springframework.web.filter
abstract public class: GenericFilterBean [javadoc | source]
java.lang.Object
   org.springframework.web.filter.GenericFilterBean

All Implemented Interfaces:
    Filter, DisposableBean, BeanNameAware, InitializingBean, ServletContextAware

Direct Known Subclasses:
    Log4jNestedDiagnosticContextFilter, ServletContextRequestLoggingFilter, DelegatingFilterProxy, OncePerRequestFilter, MultipartFilter, RequestContextFilter, OpenSessionInViewFilter, OpenPersistenceManagerInViewFilter, CommonsRequestLoggingFilter, CharacterEncodingFilter, OpenEntityManagerInViewFilter, OpenSessionInViewFilter, AbstractRequestLoggingFilter

Simple base implementation of javax.servlet.Filter which treats its config parameters (init-param entries within the filter tag in web.xml) as bean properties.

A handy superclass for any type of filter. Type conversion of config parameters is automatic, with the corresponding setter method getting invoked with the converted value. It is also possible for subclasses to specify required properties. Parameters without matching bean property setter will simply be ignored.

This filter leaves actual filtering to subclasses, which have to implement the javax.servlet.Filter#doFilter method.

This generic filter base class has no dependency on the Spring org.springframework.context.ApplicationContext concept. Filters usually don't load their own context but rather access service beans from the Spring root application context, accessible via the filter's ServletContext (see org.springframework.web.context.support.WebApplicationContextUtils ).

Field Summary
protected final  Log logger    Logger available to subclasses 
Method from org.springframework.web.filter.GenericFilterBean Summary:
addRequiredProperty,   afterPropertiesSet,   destroy,   getFilterConfig,   getFilterName,   getServletContext,   init,   initBeanWrapper,   initFilterBean,   setBeanName,   setServletContext
Methods from java.lang.Object:
equals,   getClass,   hashCode,   notify,   notifyAll,   toString,   wait,   wait,   wait
Method from org.springframework.web.filter.GenericFilterBean Detail:
 protected final  void addRequiredProperty(String property) 
    Subclasses can invoke this method to specify that this property (which must match a JavaBean property they expose) is mandatory, and must be supplied as a config parameter. This should be called from the constructor of a subclass.

    This method is only relevant in case of traditional initialization driven by a FilterConfig instance.

 public  void afterPropertiesSet() throws ServletException 
    Calls the initFilterBean() method that might contain custom initialization of a subclass.

    Only relevant in case of initialization as bean, where the standard init(FilterConfig) method won't be called.

 public  void destroy() 
    Subclasses may override this to perform custom filter shutdown.

    Note: This method will be called from standard filter destruction as well as filter bean destruction in a Spring application context.

    This default implementation is empty.

 public final FilterConfig getFilterConfig() 
    Make the FilterConfig of this filter available, if any. Analogous to GenericServlet's getServletConfig().

    Public to resemble the getFilterConfig() method of the Servlet Filter version that shipped with WebLogic 6.1.

 protected final String getFilterName() 
    Make the name of this filter available to subclasses. Analogous to GenericServlet's getServletName().

    Takes the FilterConfig's filter name by default. If initialized as bean in a Spring application context, it falls back to the bean name as defined in the bean factory.

 protected final ServletContext getServletContext() 
    Make the ServletContext of this filter available to subclasses. Analogous to GenericServlet's getServletContext().

    Takes the FilterConfig's ServletContext by default. If initialized as bean in a Spring application context, it falls back to the ServletContext that the bean factory runs in.

 public final  void init(FilterConfig filterConfig) throws ServletException 
    Standard way of initializing this filter. Map config parameters onto bean properties of this filter, and invoke subclass initialization.
 protected  void initBeanWrapper(BeanWrapper bw) throws BeansException 
    Initialize the BeanWrapper for this GenericFilterBean, possibly with custom editors.

    This default implementation is empty.

 protected  void initFilterBean() throws ServletException 
    Subclasses may override this to perform custom initialization. All bean properties of this filter will have been set before this method is invoked.

    Note: This method will be called from standard filter initialization as well as filter bean initialization in a Spring application context. Filter name and ServletContext will be available in both cases.

    This default implementation is empty.

 public final  void setBeanName(String beanName) 
    Stores the bean name as defined in the Spring bean factory.

    Only relevant in case of initialization as bean, to have a name as fallback to the filter name usually provided by a FilterConfig instance.

 public final  void setServletContext(ServletContext servletContext) 
    Stores the ServletContext that the bean factory runs in.

    Only relevant in case of initialization as bean, to have a ServletContext as fallback to the context usually provided by a FilterConfig instance.