WSO2:wso2中的xml到json数据映射esb:json消息包含在soap信封中

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了WSO2:wso2中的xml到json数据映射esb:json消息包含在soap信封中相关的知识,希望对你有一定的参考价值。

我正在处理一个请求,其中输入消息是xml,它必须转换为json。我正在使用数据映射器来执行此操作。相同和以下的配置代理服务是它的代码:

<?xml version="1.0" encoding="UTF-8"?>
<proxy name="xmltojson_to_Partneronb" startOnLoad="true" transports="vfs 
http https" xmlns="http://ws.apache.org/ns/synapse">
<target>
<inSequence>
<log level="full">
<property name="property_name" value="Initial reading file"/>
</log>
<datamapper config="gov:datamapper/ProducerPartnerOnb.dmc" inputSchema="gov:datamapper/ProducerPartnerOnb_inputSchema.json" inputType="XML" outputSchema="gov:datamapper/ProducerPartnerOnb_outputSchema.json" outputType="JSON"/>
<log level="full">
<property name="property_name" value="after enriching"/>
</log>
<property name="messageType" scope="axis2" type="STRING" value="application/json"/>
</inSequence>
<outSequence/>
<faultSequence/>
</target>
<parameter name="transport.PollInterval">1</parameter>
<parameter name="transport.vfs.FileURI">file:///tmp/in</parameter>
<parameter name="transport.vfs.ContentType">application/xml</parameter>
<parameter name="transport.vfs.ActionAfterProcess">MOVE</parameter>
<parameter name="transport.vfs.MoveAfterFailure">file:///tmp/failure</parameter>
<parameter name="transport.vfs.ActionAfterFailure">MOVE</parameter>
<parameter name="transport.vfs.FileNamePattern">.*.xml</parameter>
<parameter name="transport.vfs.MoveAfterProcess">file:///tmp/out</parameter>
</proxy>
答案

从您提供的日志中,SOAP格式未正确构建,下面是格式化的SOAP响应。

<soapenv:Envelope xmlns:soapenv="schemas.xmlsoap.org/soap/envelope/">
   ;
   <soapenv:Body>
      <jsonObject>
         <FirstName>ABC</FirstName>
         <MiddleInitial>m</MiddleInitial>
         <LastName>LN</LastName>
         <Email>test@test.com</Email>
         <Company>Test</Company>
         <Address1>200 West St</Address1>
         <Address2>hjhjhj</Address2>
      </jsonObject>
   </soapenv:Body>
</soapenv:Envelope>

在SOAP信封结束后,有一个;因为你得到错误,你需要纠正这个。

以上是关于WSO2:wso2中的xml到json数据映射esb:json消息包含在soap信封中的主要内容,如果未能解决你的问题,请参考以下文章

如何在 WSO2 中以 XML 格式转换 JSON 消息

WSO2 ESB 无法将完整的 JSON 数据转换为 XML

WSO2 DataMapper 将 XML 转换为 SOAP 时出错

将 xml 转换为 json 的 WSO2 ESB 问题

WSO2 API Manager将JSON转换为XML(并且失败了请求)

WSO2 Enterprise Integrator 6.6.0 使用 XSLT 将 XML 响应转换为 Json