フロー内にWebサービスコンシューマがあり、単純にアウトバウンドVMキューに配置されるSOAPエンベロープに含まれるXMLを抽出したいとします。どのように私は流れでそれを達成することができます、私は石鹸メッセージのサンプルを示しています。WebサービスコンシューマからSoap Bodyを取得する
<ws:consumer-config name="WS_Connector"
connector-ref="HTTP_HTTPS" wsdlLocation="orderService.wsdl"
service="OrderService" port="OrderServiceWS"
serviceAddress="http://ws-orders.com?responseTimeout=60000"
doc:name="Web Service Consumer" />
<flow name="mainFlow">
<vm:inbound-endpoint path="request.queue"/>
<ws:consumer config-ref="WS_Connector"
operation="orderTShirts" doc:name="TShirt Service Consumer">
</ws:consumer>
<!-- Get Just the XML Payload without the Soap Envelope
for the vm outbound queue
<tshirt xmlns="http://www.webservice.order-service">
<size>17</size>
<color>red</color>
</tshirt>
-->
<vm:outbound-endpoint path="response.queue"/>
</flow>
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body>
<tshirt xmlns="http://www.webservice.order-service">
<size>17</size>
<color>red</color>
</tshirt>
</soap:Body>
</soap:Envelope>
ありがとうございます、しかし、私はそれをDOMトランスフォーマで解決しました。私はそれを追加しない石鹸の封筒を削除するために探していた。 – BreenDeen
あなたはここで**単に "アウトバウンドVMキューに置くために石鹸の封筒に含まれているXMLを抽出したい"と言います。つまり、Soapエンベロープに含まれる応答を抽出したいということです。そうでなければ、 ' 'の後にレスポンスを得ることができます.Web-service-consumerはSoapエンベロープとヘッダなしで動作するように設計されています。 xmlに変換する必要があります –