2

Spring WS で Jaxb 2 を使用しています。特定のペイロードに向けられたインターセプターがあり、正常に動作します。

ここで私の要件は、インターセプターの handleRequest メソッドから要求パラメーターを読み取ることです。私はこれがかなり簡単であることを知っています。ただし、リクエスト パラメータを読み取る方法がわかりませんでした。現時点では、私の handleRequest メソッドは以下のようになっています。

@Override
public boolean handleRequest(MessageContext messageContext, Object endpoint)
    throws Exception {

    boolean proceed = true;

    SaajSoapMessage saajSoapMessage = 
                    (SaajSoapMessage) messageContext.getRequest();

    SOAPMessage soapMessage = saajSoapMessage.getSaajMessage();

    Document doc = saajSoapMessage.getDocument();

    Element element = doc.getElementById("request");
}

私のエンドポイントクラスの関連部分は

@PayloadRoot(namespace = NAMESPACE, localPart = "confirOrderRequest")
public @ResponsePayload ConfirmOrderResponse handleConfirmOrder(
    @RequestPayload ConfirmOrderRequest confirmOrderRequest) {

     ...........
}

ここで私の要件はConfirmOrderRequest、インターセプターの handleRequest メソッドに付属する orderId を取得することです。これを直接行う方法はありますか、それとも XML 解析を行う必要がありますか?

4

1 に答える 1