【发布时间】:2014-09-06 08:19:06
【问题描述】:
我有一个基于 Jersey 的 Java servlet:
@Path("foo")
class Foo {
@GET
@Path("bar")
public Response bar(@QueryParam("key") String value) {
// ...
}
}
我可以在 Tomcat 中这样调用它:
http://localhost:8080/container/foo/bar?key=blah
但是,在我的 JerseyTest 中,使用 Grizzly 并没有正确处理参数。此测试用例返回 404 错误:
@Test
public void testBar() {
final Response response = target("foo/bar?key=blah").request().get();
}
我怀疑问题在于它正在寻找名为 foo/bar?key=blah 的资源,而不是尝试将 key=blah 传递给位于 foo/bar 的资源。如果我只将 "foo/bar" 传递给 target(),我会得到 500,因为代码会为空参数引发异常。
我查看了 Jersey 测试文档和一些示例,我发现了一些看起来很神秘的东西,这些东西可能用于将参数传递给 GET,但它们看起来都不像是在为参数赋值,所以我没有t 肯定我会如何使用它。
如何将我的值传递给该参数?
【问题讨论】:
标签: java jersey jersey-2.0 grizzly