Define a filter in web.xml:
<filter>
<filter-name>SimpleFilter</filter-name>
<display-name>SimpleFilter</display-name>
<description>log filter</description>
<filter-class>com.filtertest.SimpleFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>SimpleFilter</filter-name>
<servlet-name>simple</servlet-name>
<!-- <url-pattern>/request.go</url-pattern>-->
<dispatcher>REQUEST</dispatcher>
<dispatcher>FORWARD</dispatcher>
</filter-mapping>
Make sure the FORWARD dispatcher is defined, otherwise only the original request URL will be used to determine if the filter should be invoked. In other words, if FORWARD is missing, any HTTP requests that were forwarded to this resource will not invoke the filter.
Implement a doFilter(…) method in the
com.filtertest.SimpleFilter
class as follows:log.info("Filter invoked"); // pass the request along the filter chain chain.doFilter(request, response); }