我創建了具有請求作爲代理:如何合併WSO2 ESB中的響應?
<body>
<p:GetPersonDataOperation xmlns:p="http://tempuri.org">
<!--1 or more occurrences-->
<xs:ID xmlns:xs="http://tempuri.org">1</xs:ID>
<xs:ID xmlns:xs="http://tempuri.org">2</xs:ID>
</p:GetPersonDataOperation>
</body>
現在inSequence中我已經使用迭代器爲:
<sequence xmlns="http://ws.apache.org/ns/synapse" name="GetPersonDataOperationSeq">
<iterate xmlns:xs="http://tempuri.org" xmlns:ns="http://org.apache.synapse/xsd" xmlns:p="http://tempuri.org" preservePayload="true" attachPath="//p:GetPersonData" expression="//p:GetPersonData/xs:ID" id="IteratorForPersonData">
<target>
<sequence>
<property name="ID" expression="//xs:ID" scope="default" type="String"/>
<filter xpath="count(//xs:ID)>0">
<then>
<log level="custom">
<property name="sequence" value="with id"/>
</log>
<payloadFactory>
<format>
<p:GetPersonDataOperation>$1</p:GetPersonDataOperation>
</format>
<args>
<arg expression="get-property('ID')"/>
</args>
</payloadFactory>
<send>
<endpoint key="GetPersonDataEP"/>
</send>
</then>
<else/>
</filter>
</sequence>
</target>
</iterate>
</sequence>
時,我打我的代理與上述要求,我能夠得到輸出但不適用於兩個ID,但ID = 2。我想要得到兩個響應,即ID = 1和ID = 2。我知道這可以使用XSLT Mediator完成但我沒有任何有關XSLT Transformation的知識。我怎樣才能創建一個自定義響應通過合併ID = 1和2使用xslt中介的答覆。我可以使用Aggregate Mediator解決這個問題嗎? 在這方面需要幫助很嚴重。提前感謝
我有這樣的問題。我解決它,所以http://stackoverflow.com/questions/17443232/as-in-the-iterate-to-change-the-message-and-send-it-fully-wso2esb –