caucho
Resin
FAQ
Reference Guide
Demo
Tutorial

Getting Started
Configuration
IDE
Topics
JSP
XML/XSLT

Basic Config
Directory
Servlets
Filters
Resources
Databases
Messaging
Security Config
Log Config
Taglib Config
Misc resin.conf
Host resin.conf
Port resin.conf
App resin.conf
Summary
Glossary
Index
 Filter Configuration

Servlets
Configuration
Resources

Filter configuration follows the Servlet 2.3 deployment descriptors. Creating and using a filter has three steps:

  1. Create a filter class which extends javax.servlet.Filter
  2. Use <filter> in the web.xml to configure the filter.
  3. Use <filter-mapping> to select URLs and servlets for the filter.

Some other pages which discuss filters include:

Index
filterDefines a filter alias for later mapping
filter-classClass of the filter
filter-mappingMaps url patterns to filters
filter-nameAlias of the filter
init-paramInitializes filter variables

Filter Configuration

filter

Defines a filter alias for later mapping.

TagMeaning
filter-nameThe filter's name (alias)
filter-classThe filter's class (defaults to servlet-name)
init-paramInitialization parameters

The following example defines a filter alias 'image'

<web-app id='/'>

<filter-mapping url-pattern='/images/*'
                 filter-name='image'/>

<filter filter-name='image'
         filter-class='test.MyImage'>
  <init-param title='Hello, World'/>
</filter>

</web-app>

filter-name

Alias of the filter.

filter-class

Class of the filter. The CLASSPATH for filters includes the WEB-INF/classes directory and all jars in the WEB-INF/lib directory.

init-param

Initializes filter variables. filter-param defines initial values for getFilterConfig().getInitParameter("foo").

The full Servlet 2.3 syntax for init-param is supported and allows a simple shortcut

<web-app id='/'>

<filter filter-name='test.HelloWorld'>
  <init-param foo='bar'/>

  <init-param>
    <param-name>baz</param-name>
    <param-value>value</param-value>
  </init-param>
</filter>

</web-app>

filter-mapping

Maps url patterns to filters. filter-mapping has two children, url-pattern and filter-name. url-pattern selects the urls which should execute the filter.

filter-name can either specify a servlet class directly or it can specify a servlet alias defined by filter.

ConfigurationDescription
url-patternA pattern matching the url: /foo/*, /foo, or *.foo
url-regexpA regular expression matching the url
servlet-nameA servlet name to match.
filter-nameThe filter name
filter-classThe filter class
init-paramInitialization parameters

<caucho.com>
<web-app id='/'>

<servlet servlet-name='hello'
         servlet-class='test.HelloWorld'/>

<servlet-mapping url-pattern='/hello'
                 servlet-name='hello'/>

<filter filter-name='test-filter'
        filter-class='test.MyFilter'/>

<filter-mapping url-pattern='/hello/*'
                 filter-name='test-filter'/>

<filter-mapping servlet-name='hello'
                 filter-name='test.SecondFilter'/>

</web-app>


Servlets
Configuration
Resources
Copyright © 1998-2002 Caucho Technology, Inc. All rights reserved.
Resin® is a registered trademark, and HardCoretm and Quercustm are trademarks of Caucho Technology, Inc.