在 Jersey 测试调用上设置查询参数
2022-09-02 23:40:08
我有一个基于泽西岛的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();
}
我怀疑问题是它正在寻找一个名为的资源,而不是试图传递给的资源。如果我只传递给 ,我会得到一个 500,因为代码会为 null 参数引发异常。foo/bar?key=blah
key=blah
foo/bar
"foo/bar"
target()
我浏览了泽西岛测试文档和一些示例,我发现了一些看起来很神秘的东西,这些东西可能是用于将参数传递给GET的,但是看起来都没有为参数分配值,所以我不确定如何使用它。
如何为该参数传递我的值?