如何获取实现CometProcessor接口的servlet请求以通过过滤器

时间:2013-01-29 06:42:48

标签: java comet servlet-filters url-pattern

我有一个实现CometProcessor的servlet,我试图让这个servlet的请求通过一个过滤器。在web.xml中指定servlet不会使对servlet的请求通过过滤器。我也尝试实现CometFilter并在web.xml下指定实现CometProcessor的servlet。 我收到以下错误 -

Jan 29, 2013 12:10:04 PM org.apache.catalina.connector.CoyoteAdapter service - SEVERE: An exception or error occurred in the container during the request processing
java.lang.NullPointerException
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:430)
    at org.apache.coyote.http11.Http11NioProcessor.process(Http11NioProcessor.java:396)
    at org.apache.coyote.http11.Http11NioProtocol$Http11ConnectionHandler.process(Http11NioProtocol.java:356)
    at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1534)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)

1 个答案:

答案 0 :(得分:1)

感谢您的投入,我发现了我的错误。 我在实现CometFilter时犯了一个错误。我阅读了CometFilter类本身的文档,发现我需要实现doFilterEvent方法而不是doFilter方法。现在它正常工作并且对实现CometProcessor的servlet的请求被传递给这个过滤器。