1

JAX-RS1.0を使用しています。サーバーは、リクエストを処理する前に、カスタムHTTPヘッダーが存在することを確認します。

これをJAX-RSクライアントのAOPのような動作にしたいと思います。この動作では、すべてのリクエストにHTTPヘッダーが自動的に追加されます。

JAX-RS 1.0はアウトバウンドクライアントインターセプターをサポートしていますか?ドキュメントにそれについての言及が見つかりません。別の方法は、CXF固有のアウトバウンドインターセプターを作成することです...ありがとう!

4

3 に答える 3

1

@PreMatching インターセプターを作成できます

import javax.ws.rs.container.ContainerRequestContext;
import javax.ws.rs.container.ContainerRequestFilter;
import javax.ws.rs.container.PreMatching;
import java.io.IOException;

@PreMatching
public class ContentTypeFilter implements ContainerRequestFilter {

    @Override
    public void filter(ContainerRequestContext requestContext)
            throws IOException {

        requestContext.getHeaders().putSingle("Content-Type", "application/json");
    }
}
于 2016-02-01T08:50:34.980 に答える
1

JAX-RS 1.0 でこれを行う良い方法はありません。CXFインターセプターを使用しました。

于 2012-09-28T19:55:39.620 に答える
0

JAX-RS は API であるため、独自の実装を提供できるはずです。javax.ws.rs.client.ClientFactoryjavax.ws.rs.client.Clientを実装し、から事前設定されたものを返すのはどうですかgetClient()。クラスが、使用している JAX-RS 実装と競合しない限り、問題なく動作するはずです。

于 2012-09-25T11:16:26.793 に答える