Set Abfrage-Parameter auf ein Trikot Testanruf

Ich habe eine Jersey-basierte Java-servlet:

@Path("foo")
class Foo {
  @GET
  @Path("bar")
  public Response bar(@QueryParam("key") String value) {
    //...
  }
}

Kann ich es nennen, der in Tomcat ganz gut als:

http://localhost:8080/container/foo/bar?key=blah

Jedoch in meiner JerseyTest, mit Grizzly, es ist nicht die Handhabung der Parameter korrekt. Dieser Testfall liefert einen 404-Fehler:

@Test
public void testBar() {
  final Response response = target("foo/bar?key=blah").request().get();
}

Ich vermute, das Problem ist, es ist auf der Suche für eine Ressource mit dem Namen foo/bar?key=blah anstatt zu versuchen, pass key=blah um die Ressource zu foo/bar. Wenn ich pass nur "foo/bar" zu target() bekomme ich einen 500, wie der code löst eine Ausnahme für einen ungültigen parameter.

Ich schaute durch den Trikot-Test-Dokumentation und einige Beispiele, und ich fand einige unverständliche Sachen suchen, der vielleicht für die übergabe von Parametern an eine BEKOMMEN, aber keiner davon sah aus wie es war die Zuweisung von Werten zu Parametern, so war ich nicht positiv, wie ich es verwenden würde.

Wie kann ich meinen Wert für diesen parameter?

InformationsquelleAutor der Frage kwiqsilver | 2014-07-15

Schreibe einen Kommentar