UrlRewriteFilter Logo

A Java Web Filter for any compliant web application servers (such as Tomcat, JBoss, Jetty or Resin), which allows you to rewrite URLs before they get to your code. It is a very powerful tool just like Apache's mod_rewrite.



Add urlrewritefilter-5.1.3.jar
to WEB-INF/lib

Or add Maven dependency


To WEB-INF/web.xml add (near the top above any servlet mappings): (see filter parameters for more options)


Add urlrewrite.xml in WEB-INF (src/main/webapp/WEB-INF/ for Maven users)

After restarting you can visit (or whatever the address of your local webapp and context) to see output (note: this page is only viewable from localhost).


What is URL Rewriting?

URL rewriting is very common with Apache Web Server (see mod_rewrite's rewriting guide) but has not been possible in most java web application servers. The main things it is used for are:

  • URL Tidyness / URL Abstraction - keep URLs tidy irrespective of the underlying technology or framework (JSP, Servlet, Struts etc).
  • Browser Detection - Allows you to rewrite URLs based on request HTTP headers (such as user-agent or charset).
  • Date based rewriting - Allows you to forward or redirect to other URL's based on the date/time (good for planned outages).
  • Moved content - enable a graceful move of content or even a change in CMS.
  • Tiny/Friendly URL's (i.e. blah.com/latest can be redirected to blah.com/download/ver1.2.46.2/setup.exe)
  • A Servlet mapping engine (see Method Invocation)

4.0 User Manual

5.1 User Manual


This filter has been mentioned at: