2

我在这里做错了什么?我想将 Mule 消息的有效负载设置为包含多个值的映射,其中一个是流变量的内容。

<set-variable variableName="myVariable" value="foo"/>
<set-payload value="#[['STATUS':'OKAY','NEXT':'Test','TEXT':flowVars['myVariable']]]"/>
<logger level="INFO" message="#[payload]"/>

这个的输出是:

{STATUS=OKAY, NEXT=Test}

我期待:

{STATUS=OKAY, NEXT=Test, TEXT=foo}

我知道我可以使用一系列表达式转换器来做到这一点,但是,如果我想使用这种表示法,为什么不将流变量的值拉进去呢?

编辑:删除源代码中的拼写错误 这解决了 Ryan 在下面的回答中指出的问题。

4

1 回答 1

5

看来你的牙套不平衡。“测试”之后有一个不必要的大括号。

应该:

<set-payload value="#[['STATUS':'OKAY','NEXT':'Test','TEXT':flowVars['myVariable']]]"/>
于 2014-07-01T21:37:11.087 回答