如何修改Mule有效负载变量?

Ben*_*yan 2 mule

使用Mule 3.3,我有一个Payload(以JSON开头,我使用java.util.HashMap将其转换为Object).我可以使用以下方法从JDBC查询中正确访问变量:

#[message.payload.AddJob.variable1]
Run Code Online (Sandbox Code Playgroud)

如何添加新变量(比如变量2)或修改现有变量的值?

我试过了:

<message-properties-transformer doc:name="Message Properties">
    <add-message-property key="message.payload.AddJob.variable2" value="&quot;hello&quot;"/>
</message-properties-transformer>
Run Code Online (Sandbox Code Playgroud)

哪个没效果.

我还尝试了一个groovy脚本(如下所示):如何在mule有效载荷中添加其他数据?,但它用"hello"覆盖整个有效负载,而不仅仅是变量2.

payload['AddJob.variable2'] = 'hello'
Run Code Online (Sandbox Code Playgroud)

Dav*_*sot 9

用什么:

<expression-transformer
            expression="#[message.payload.AddJob.variable2='hello';message.payload]" />
Run Code Online (Sandbox Code Playgroud)