我们有一个带有自定义拦截器注释的@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上的调用,或者根本不可能这样做?
答案 0 :(得分:3)
经过一番挖掘后,我发现它有些令人困惑,虽然它是一个很好的候选者,可以称之为'bean',但servlet可以免受拦截机制的影响。
看起来JEE6的各个部分可能会也可能不会支持拦截器:)。找到了一些讨论here。