我正在使用JerseyTest v2.5和Grizzly容器编写测试。我的资源依赖于我的web.xml中定义的过滤器,因此测试失败。
使用JerseyTest时,是否可以配置servlet过滤器?
更好的是,有没有办法使用我的web.xml来配置servlet容器?
最佳答案
关于该问题,您可能已经看到过:https://java.net/jira/browse/JERSEY-2259
最终,看起来像
you can't currently register servlet and filter class concurrently with jersey test framework (setting one will erase the other).
此报价摘自this reply by Pavel Bucek。
我想知道您是否看过,他似乎找到了解决方法,但是我不确定这是否适用于您。
What you can do is deploy your application on (for example) embedded glassfish and run your tests against it using support for external container. Command for executing tests will look like:
jersey version 1.2+:
mvn test
Djersey.test.containerFactory=com.sun.jersey.test.framework.spi.container.external.ExternalTestContainerFactory
Djersey.test.port=XXX -Djersey.test.host=XXX
jersey version 1.1.5.1-:
mvn test
Djersey.test.containerFactory=com.sun.jersey.test.framework.spi.container.external.ExternalTestContainerFactory
DJERSEY_HTTP_PORT=XXX -DJERSEY_HOST_NAME=XXX
关于jersey - JerseyTest 2.x中的过滤器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20744996/