java-@WebServlet中的拦截器未激活

我们有一个@WebServlet,它带有一个自定义拦截器注释,如下所示:

@WebServlet("/path")
@CustomInterceptor
public class InitialHtmlServlet extends HttpServlet
{
  @Override
  protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException
  {
  }
}

在/ WEB-INF的beans.xml中有CustomInterceptor,而拦截器在其他CDI组件中有效.但是,在此servlet中,我们无法使其正常工作.

我们正在运行最新的JBoss EAP,它应该与JBoss 7.1.1有点相似.为了使拦截器能够捕获servlet上的调用,我们应该做些不同的事情吗?或者根本不可能吗?

解决方法:

经过一番挖掘之后,我还发现它有些令人困惑,尽管Servlet被称为“ bean”是一个很好的候选者,但它不受拦截器机制的限制.

看来JEE6的各个部分可能会或可能不会随意支持拦截器:).找到了一些讨论here.

上一篇:几款java工作流程引擎快速开发平台比较


下一篇:java-如何在JBoss EAP6 / AS7中的安全约束之前应用过滤器