将流变量添加到 Mule 地图有效负载

Tad*_*Tad 2 transformer-model mule

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

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

其输出是:

{STATUS=OKAY, NEXT=Test}
Run Code Online (Sandbox Code Playgroud)

我期待着:

{STATUS=OKAY, NEXT=Test, TEXT=foo}
Run Code Online (Sandbox Code Playgroud)

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

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

Rya*_*ter 5

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

应该:

<set-payload value="#[['STATUS':'OKAY','NEXT':'Test','TEXT':flowVars['myVariable']]]"/>
Run Code Online (Sandbox Code Playgroud)