Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/security/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
mule在json中动态插入数据_Mule - Fatal编程技术网

mule在json中动态插入数据

mule在json中动态插入数据,mule,Mule,在mule中,上面的json是我的输入数据。我想在mule中更改运行时的状态值。有人能告诉它怎么走吗?先把它转换成地图: { "product1": { "addedBy": "1014", "addedDate": "1429681809598", "campaignName": promotion, "status": "Available" }, "product2": { "addedBy": "1015",

在mule中,上面的json是我的输入数据。我想在mule中更改运行时的状态值。有人能告诉它怎么走吗?

先把它转换成地图:

{
  "product1": {
     "addedBy": "1014",
    "addedDate": "1429681809598",
    "campaignName": promotion,
    "status": "Available"

  },
    "product2": {
       "addedBy": "1015",
      "addedDate": "1429681809598",
      "campaignName": bulkoffer,
      "status": "Available"

  },
    "product3": {
         "addedBy": "1015",
        "addedDate": "1429681809598",
        "campaignName": premiumoffer,
        "status": "Available"        
    }    
    }
然后使用MEL更新贴图

<json:object-to-json-transformer returnClass="java.util.HashMap" />
准备好后,将其转换回json:

<expression-component>payload.product1.status = 'Unavailable'</expression-component>
另一种方法是使用它,它可以很容易地满足您的需求,并且可以在运行时动态地更改status的值,无论您想要更改哪个statuselement

<json:object-to-json-transformer />
<dw:transform-message doc:name="Transform Message">
        <dw:set-payload><![CDATA[%dw 1.0
           %output application/json
           ---
           {
             product1: {
                 "addedBy": payload.product1.addedBy,
                 "addedDate": payload.product1.addedDate,
                 "campaignName": payload.product1.campaignName,
                 "status": "Unavailable" 
            },
             product2:{
                 "addedBy": payload.product2.addedBy,
                 "addedDate": payload.product2.addedDate,
                 "campaignName": payload.product2.campaignName,
                 "status": "Unavailable" 
           },
             product3:{
                 "addedBy": payload.product3.addedBy,
                 "addedDate": payload.product3.addedDate,
                 "campaignName": payload.product3.campaignName,
                 "status": "Unavailable" 
           }

           } ]]></dw:set-payload>
    </dw:transform-message>