そこで、SOAP呼び出しを介していくつかのWebサービスを使用するモバイルアプリケーション(IBM Worklightを使用)を構築しています。4つのWebサービスのうち3つを機能させたり、値をプルバックしたりすることができました。アプリは、SOAP応答からの値をHTML形式で表示します。これは基本的に、値がSOAP応答から取得されて表示される方法です。
var submit = result.invocationResult.Envelope.Body.FinSummary.out.SubServices.ServiceName;
表示したい値が一意である限り、これは問題なく機能しました。最終的なWebサービスのSOAP応答は非常に長く、繰り返し値が含まれています。たとえば、SOAP応答は次のようになります。
<Envelope>
<Header/>
<Body>
<FinSummary>
<out>
<SubServices>
<....>
<ServiceName>STRING</ServiceName>
<....>
</SubServices>
<SubServices>
<....>
<ServiceName>STRING</ServiceName>
<....>
</SubServices>
<SubServices>
<....>
<ServiceName>STRING</ServiceName>
<....>
</SubServices>
</out>
</FinSummary>
</Body>
</Envelope>
これらの文字列をそれぞれ引き出す必要がありますが、SubServices/ServiceNameノードは明らかに一意ではありません。誰かがこれらの値を引き出す方法を知っていますか?