It works fine without throwing any Exception within Struts framework.
However, if I use /*.do, or /*.jsp, or /*.htm, it does not invoke the filter. It invokes the filter (obviously, for every page) only with /* url-pattern.
Question to Sean: Do you know why?
My Servlet does redirection to another JSP and Sean's filter is working fine within my Struts environment.
Comment to Sean: You have many assert statements like: assert config != null; You might consider removing those lines from published code. Otherwise, users have to comment those lines for the code to compile.