json - WSO2:wso2 esb 中的 xml 到 json 数据映射:json 消息被包裹在肥皂信封中
问题描述
我正在处理一个请求,其中输入消息是 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 信封结束后;
,您会遇到错误,您需要纠正它。
推荐阅读
- c - 如何在 32 位和 64 位模式下获得相同的双精度操作行为?
- python - 如何查看列表的所有元素是否都包含在字符串中
- anaconda - Anaconda-navigator 在 Mac 上启动时崩溃
- django - Django 模板包含/块
- javascript - 根据可用空间堆叠 div
- sql - Access 2016 选择查询重复字段值
- asp.net-mvc - ASP.NET MVC 不提供 MP3 文件
- android - 在我的代码中找不到导致 R 错误的方法 android
- php - 将 API 参数传递给 url laravel/guzzle
- php - PHP 警告:我的脚本中为 foreach() 提供的参数无效