使用WSO2 ESB Script mediator创建JSON

时间:2014-08-13 10:17:23

标签: javascript json wso2 esb payload

我使用WSO2 ESB脚本调解器来生成JSON。 试图获得以下JSON对象。

var payLoad = {
    "id": id,
    "name": name,
    "typeId": typeId,
    "userId": userId,
    "riskId": riskId
};
mc.setPayloadJSON(payLoad)

但是从ESB返回以下JSON

{
    "id": "305",
    "riskId": "254",
    "typeId": "1",
    "userId": "1",
    "name": "goal"
}

我如何纠正订单。 感谢

1 个答案:

答案 0 :(得分:1)

请试试这个,

     <property name="id" expression="json-eval($.id)"></property>
     <property name="name" expression="json-eval($.name)"></property>
     <property name="typeId" expression="json-eval($.typeId)"></property>
     <property name="userId" expression="json-eval($.userId)"></property>
     <property name="riskId" expression="json-eval($.riskId)"></property>
     <payloadFactory media-type="json">
        <format>
        {
        "id":"$1",
        "name":"$2",
        "typeId":"$3",
        "userId":"$4",
        "riskId":"$5"
        }
        </format>
        <args>
           <arg evaluator="json" expression="$.id"></arg>
           <arg evaluator="json" expression="$.name"></arg>
           <arg evaluator="json" expression="$.typeId"></arg>
           <arg evaluator="json" expression="$.userId"></arg>
           <arg evaluator="json" expression="$.riskId"></arg>
        </args>
     </payloadFactory>