wso2转换,xml到json转换
Posted
技术标签:
【中文标题】wso2转换,xml到json转换【英文标题】:wso2 conversion, xml to json conversion 【发布时间】:2021-01-30 16:48:06 【问题描述】:我对 wso2 完全陌生,我需要将给定的输入请求 xml 更改为 json,然后将其发送到适配器,然后在 json 和 xml 中获取响应。这怎么可能??
我正在使用 wso2 集成工作室进行开发。
<Request>
<requestId><![CDATA[11111111111111111]]></requestId>
<timeStamp><![CDATA[2019/12/25 12:12:12]]> </timeStamp>
<msisdn> <![CDATA[888]]></msisdn>
<keyWord><![CDATA[TEST_API]]></keyWord>
<dataSet>
<param>
<id><![CDATA[first_id]]></id>
<value><![CDATA[12310209842396]]></value>
</param>
<param>
<id><![CDATA[second_id]]></id>
<value><![CDATA[1]]></value>
</param>
</dataSet>
</Request>
【问题讨论】:
【参考方案1】:在中介序列中,您可以使用 messageType 属性指示在将消息发送到适配器时应将其转换为 JSON。并且在返回阶段,您可以再次使用 messageType 属性将消息转换为 XML。
<property name="messageType" value="application/json" scope="axis2"/>
例子:
<?xml version="1.0" encoding="UTF-8"?>
<api name="toJson" context="/tojson" xmlns="http://ws.apache.org/ns/synapse">
<resource methods="POST">
<inSequence>
<property name="messageType" value="application/json" scope="axis2" />
<send>
<endpoint key="adapter"/>
</send>
</inSequence>
<outSequence>
<property name="messageType" value="application/xml" scope="axis2" />
<send />
</outSequence>
</resource>
</api>
【讨论】:
你能解释一下这个过程吗?我对此完全陌生。我怎样才能创建这个中介序列?? 我已经用示例编辑了我的答案。检查。如果您在使用 Studio 时需要更多帮助,请查看此博客 medium.com/think-integration/… 所以我们也需要创建一个适配器,对吧??如何使用 wso2 创建适配器?或者我应该为此创建一个普通的 servlet? 我只是将后端端点称为适配器(就像您在问题中所问的那样)。您可以在那里使用任何端点。 (HTTP、JMS、RabbitMQ)。有关 HTTP 示例,请查看我分享的上述博客。以上是关于wso2转换,xml到json转换的主要内容,如果未能解决你的问题,请参考以下文章
WSO2 DataMapper 将 XML 转换为 SOAP 时出错
WSO2 ESB 无法将完整的 JSON 数据转换为 XML
WSO2 Enterprise Integrator 6.6.0 使用 XSLT 将 XML 响应转换为 Json