如何发送字符串内容作为WSO2 ESB代理的响应?

时间:2015-12-10 11:51:36

标签: wso2 xquery axis2 wso2esb synapse

我们需要通过连接将XML和字符串的组合发送到JMS服务器,我们构造的有效负载不是xml,最后是混合格式的纯字符串(显然,ESB不允许,但是有一种交易方式。)

在下面添加了示例请求

Data1 = <?PCM LEID_POOLNAME="HOST" HOST_LEID_POOL_NAME="S1PMAPPM" ONE_OFF="no" TransactionName="RESPNRBLDQ" Timeout="30" OnError_getMessage="yes"?>

Data2 =

<PLAINUDI>
      <LREC DID="D7E3" DataLength="102">NMM2LXFPAWMJ</LREC>
      <LREC DID="D9D3" DataLength="200">NMM2LXFPAWMJ</LREC>
   </PLAINUDI>

要发送到端点的预期请求类似于

     **<?PCM LEID_POOLNAME="HOST" 
HOST_LEID_POOL_NAME="S1PMAPPM" ONE_OFF="no" 
TransactionName="RESPNRBLDQ" Timeout="30" OnError_getMessage="yes"?>

    <PLAINUDI>
              <LREC DID="D7E3" DataLength="102">NMM2LXFPAWMJ</LREC>
              <LREC DID="D9D3" DataLength="200">NMM2LXFPAWMJ</LREC>
           </PLAINUDI>**

我尝试将Content-Type和messageType设置为text / plain,text / csv,但在连接两个数据(Data1&amp; Data2)时,ESB无法识别格式。

可以实现吗?

如果问题需要澄清,请发表评论。 提前谢谢。

1 个答案:

答案 0 :(得分:0)

如果要使用WSO2 ESB发送文本内容,则必须创建一个SOAP消息,其中文本内容为soap body中节点<text xmlns="http://ws.apache.org/commons/ns/payload">的值

定义messageType,以便ESB选择适当的消息格式化程序:

<property name="messageType" value="text/plain" scope="axis2"/>

如果文本中有xml内容,则必须使用CDATA部分