我正嘗試在ESB中編寫一個序列,並使用有效負載工廠填充我的有效負載數據,如我在下面的示例中所述。WSO2中的有效負載工廠中的CDATA ESB
<payloadFactory>
<format>
<p:echoInt xmlns:p="http://echo.services.core.carbon.wso2.org">
<in xmlns="">$1</in>
</p:echoInt>
</format>
<args>
<arg xmlns:ns="http://org.apache.synapse/xsd" expression="an-xml-formatted-string"/>
</args>
</payloadFactory>
<send>
<endpoint>
<address uri="http://noon101:8280/services/echo" format="soap11"/>
</endpoint>
</send>
,因爲當我這個有效載荷發送到服務我的字符串格式爲XML,該服務將嘗試解析我的XML參數和(我不明白什麼是確切的原因)我的web服務方法不叫。在這link它說,如果我使用cdata比分析器不會解析我的xml格式化的字符串,並且將沒有問題。
但問題是有效載荷廠調停其內容不接受C數據。當我按照如下所示編寫Payload Factory的配置時,它會從中刪除CDATA關鍵字,並且問題包含在內。
<payloadFactory>
<format>
<p:echoInt xmlns:p="http://echo.services.core.carbon.wso2.org">
<in xmlns=""> <![CDATA[ $1 ]]> </in>
</p:echoInt>
</format>
<args>
<arg xmlns:ns="http://org.apache.synapse/xsd" expression="an-xml-formatted-string"/>
</args>
</payloadFactory>
這個問題的解決方案是什麼?任何其他中介設置負載或任何解決方法將不勝感激。
確定我是使用xsl轉換,但是出現了一個新問題。當我wroto 的 < [CDATA [ 的 ! 的]] > ESB禁用的&lt等,並轉化進入一個奇怪的方式。 –
Alper
這不是一個確切和直接的解決方案,但我的問題,但你的鏈接是非常有用的解決我的問題,所以我接受這個答案。 – Alper