'Is doFilter() executed before or after the Servlet's work is done?

The javax.servlet.Filter object can be used both for authentication (where the Filter needs to catch the request before any servlet work needs to be done) and for XSLT translation (where the servlet needs to be completely finished generating content). When does it actually get executed?

I know this is implementation dependent (on the web container), but this seems to be problem that needs to be solved by all of them.

Maybe there is a configuration option set somewhere for each Filter registration with the web container?

Additional:

Also, what governs the order of Filter execution? Why would FooFilter get executed before BarFilter?



Solution 1:[1]

According to the servlet2.3 specification filter is performed according to web.xml configuration of filter- mapping sequence Ref-http://www.programering.com/a/MTMyADOwATI.html

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 Anil Kesarwani