WSO2 Studio 开发者 - Data Mapper Mediator

WSO2 Studio Developer - Data Mapper Mediator

我正在尝试创建一个从 XML 转换为 JSON 的 Data Mapper 介体。但是,每当我尝试创建 link 时,都会收到以下错误消息:

!ENTRY org.wso2.developerstudio.datamapper.diagram 2 0 2018-02-22 12:43:29.804
!MESSAGE Could not save file L/X/Y.dmc : java.lang.ArrayIndexOutOfBoundsException

这是XML:

<?xml version="1.0" encoding="UTF-8"?>
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
   <S:Body>
      <ns0:response xmlns:ns0="http://www.server.com/api/SoapEndpoint">
         <return>
            <messages>
               <code>0</code>
               <message>STRING</message>
            </messages>            
         </return>
      </ns0:response>
   </S:Body>
</S:Envelope>

这是 JSON 架构:

{
  "success": true,
  "messages": [
    {
      "code": 0,
      "message": "string"
    }
  ]
}

每当我尝试从 XML 代码元素创建 link 到 JSON 架构中的相应字段时,我都会收到错误消息。

这是我的数据映射器配置部分:

 <datamapper config="gov:datamapper/Y.dmc" inputSchema="gov:datamapper/A.json" inputType="XML" outputSchema="gov:datamapper/Y.json" outputType="JSON"/>

发现问题:当我将其导入 Data Mapper 图表时,消息元素被解释为对象而不是数组。将其更改为数组后,映射开始工作并且问题消失了。