0

HTTP クライアントで CXF インターセプタを使用して、HTTP リクエスト URI と HTTP リクエスト メソッドを変更したいと考えています。

私はこのようなものを開発しました:

public class MyInterceptor extends AbstractPhaseInterceptor<Message> {    

    public MyInterceptor() {
        super(Phase.PRE_PROTOCOL);
    }

    public void handleMessage(Message message) {
            // this returns me correct path and method
            // String path = (String) message.getExchange().getOutMessage().get(Message.REQUEST_URI);
            // String method = (String) message.getExchange().getOutMessage().get(Message.HTTP_REQUEST_METHOD);

            // this does not work as expected
            String path = (String) message.get(Message.REQUEST_URI);
            String method = (String) message.get(Message.HTTP_REQUEST_METHOD);

            // do things here
    }

}

現在のメッセージに関するデータを取得するために exchange/OutMessage を使用する必要があるのに、メッセージを直接使用できないのはなぜですか?

両方の値を編集するにはどうすればよいですか? exchange/OutMessage と同じように使用message.put(<key>, <value>)してみましたが、何も変更されません。

4

1 に答える 1