【问题标题】:wso2 conversion, xml to json conversionwso2转换,xml到json转换
【发布时间】: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>

【问题讨论】:

    标签: wso2 wso2esb wso2ei wso2mi


    【解决方案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 示例,请查看我分享的上述博客。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-03
    相关资源
    最近更新 更多