エンドポイントに送信される前にSoapメッセージの内容を変更するWebサービスのインターセプターを作成しようとしています。クライアントが要素の値が1のメッセージを送信した場合、その要素を2に変更して、メッセージがエンドポイントに到着したときに、クライアントが2ではなく2を送信したように見せたいと思います。 1.これが私を惑わすような難しい仕事なのか、それとも私が必要以上に難しくしている簡単な仕事なのかはわかりません。
Springインターセプターのいくつかをステップスルーしました。ただし、検証およびロギングインターセプターは、転送中のメッセージをすべて変更するわけではありません。Wss4jSecurityInterceptorは、MessageContextにいくつかのプロパティを追加します。しかし、私はそれがしていることを何も活用することができませんでした。私は迎撃機のシェルを持っています。しかし、何か価値のあることをしているものは何もありません。
public boolean handleRequest(MessageContext messageContext, Object endpoint)
throws Exception {
SaajSoapMessage saajSoapMessage = (SaajSoapMessage) messageContext
.getRequest();
SOAPMessage soapMessage = saajSoapMessage.getSaajMessage();
SOAPBody soapBody = soapMessage.getSOAPBody();
return true;
}
私は、他の誰かがこの特定の問題をすでに解決している可能性があることを望んでいました。任意の洞察をいただければ幸いです。ありがとう。