0

SOAPリクエストを受け入れ、SOAPリクエストを作成できるミドルウェアがあります。

インバウンドおよびアウトバウンドのリクエストをインターセプトしてデータベースに記録するカスタムインターセプターを作成しました。

問題は、SOAP リクエストが作成されると、着信リクエストが InBound インターセプターによってインターセプトされ、モジュールが SOAP リクエストを作成すると、正しい Outbound インターセプターによってインターセプトされることです。

しかし、SOAP 要求と SOAP 応答を正しくログに記録できるように、着信 SOAP メッセージを SOAP 要求または SOAP 応答として識別したいと考えています。

SOAP メッセージを request または response として識別する方法はありますか?

4

2 に答える 2

1

CXF MessageUtilsクラスを使用してそれを行うこともできます。例:

boolean requestor = MessageUtils.isRequestor(message);
boolean outbound = MessageUtils.isOutbound(message);
if (requestor) {
    if (!outbound) {
        //This is your RESPONSE message
    }
} else {
    if (!outbound) {
        //This is your REQUEST message
    }
}
于 2013-05-16T14:57:16.140 に答える