SEAM doesn’t only extends JSF and Facelets, but also gives you a possibility to define other resources or components via annotations. To define a simple Servlet Filter you only need to annotate a class with the @Filter-annotation. There is no need to extend the web.xml or other.
One simple Filter would be:
1 2 3 4 5 6 7 8 9 10 | @Scope(ScopeType.APPLICATION) @Name("myFilter") @Install(precedence = Install.FRAMEWORK) @BypassInterceptors @Filter(within = { "org.jboss.seam.web.rewriteFilter" }) public class MyFilter extends AbstractFilter { public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { chain.doFilter(request, response); } } |
With the parameters within or around of the @Filter annotation, you can define when you filter will be called.
One reply on “Defining a ServletFilter – the SEAM way”
[…] way would be an own Servlet or Servlet-Filter, which would send the errorcode directly. […]