1
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Header>
    <WSResponseHeader xmlns="http://cio.xxx.com/commonheader/v3" xmlns:ns2="http://newhorizon.xxx.com/ABCservice">
        <WSCorrelationId>?</WSCorrelationId>
    </WSResponseHeader>
</S:Header>
<S:Body>
    <ns2:newOrderResponse xmlns="http://cio.XXX.com/commonheader/v3" xmlns:ns2="http://newhorizon.XXXX.com/ABCservice">
        <ns2:ABCOrderResponse>
            <ns2:headerStatus>ERROR</ns2:headerStatus>
            <ns2:lineResponse>
                <ns2:sourceSystemRefLineNum>1</ns2:sourceSystemRefLineNum>
                <ns2:lineStatus>ERROR</ns2:lineStatus>
                <ns2:lineError>
                    <ns2:errorCode>122</ns2:errorCode>
                    <ns2:errorMessage>Billing Category Code is required.  </ns2:errorMessage>
                </ns2:lineError>
            </ns2:lineResponse>
        </ns2:ABCOrderResponse>
    </ns2:newOrderResponse>
</S:Body>
</S:Envelope>

ColdFusion には、外部 Web サービスを呼び出す SOAP Web サービス コードがあり、アプリはそれにいくつかの行を渡します。上記は、アプリケーションが返す応答の形式です。複数の <ns2:lineResponse>型ブロックが存在する場合があります。エラータグを持つブロックもあれば、成功タグを持つブロックもあります。

この応答を繰り返し処理して、エラー タグ ブロックからのみ詳細を抽出するにはどうすればよいですか? ループさせようとすると<ns2:headerStatus>ERROR</ns2:headerStatus>、子ノードとしてもカウントされます。

4

0 に答える 0