http://jersey.java.net/nonav/documentation/latest/client-api.html#d4e704でマニュアルを読むと、ClientFilter
が追加された順に処理されると思います。しかし、私はその逆を見ている。Jersey ClientFilter注文
ClientFilter filter1 = new ClientFilter() {
@Override
public ClientResponse handle(ClientRequest cr) throws ClientHandlerException {
System.out.println("Modify Request 1");
ClientResponse response = getNext().handle(cr);
System.out.println("Modify Response 1");
return response;
}
};
ClientFilter filter2 = new ClientFilter() {
@Override
public ClientResponse handle(ClientRequest cr) throws ClientHandlerException {
System.out.println("Modify Request 2");
ClientResponse response = getNext().handle(cr);
System.out.println("Modify Response 2");
return response;
}
};
Client c = Client.create();
c.addFilter(filter1);
c.addFilter(filter2);
ClientFilter filter3 = new ClientFilter() {
@Override
public ClientResponse handle(ClientRequest cr) throws ClientHandlerException {
System.out.println("Modify Request 3");
ClientResponse response = getNext().handle(cr);
System.out.println("Modify Response 3");
return response;
}
};
WebResource r = c.resource("http://www.stackoverflow.com");
r.addFilter(filter3);
System.out.println(r.get(ClientResponse.class).getStatus());
私は、リクエスト1 2 3を変更するを参照してくださいレスポンス3 2 1を変更し、私は代わりにリクエスト3 2 1を変更するを参照してくださいすることが期待される:ここで私はドキュメントに示されているものに似た、でテストしていたコードです応答を修正する1 2 3.
私はドキュメントを後方に解釈していますか?
作成http://java.net/jira/browse/JERSEY-907 –
ありがとう、私はそれについて何ができるかを見ていきます。 –