我在这里做错了什么?我想将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在下面的回答中提到的问题。
答案 0 :(得分:4)
看来你有不平衡的牙套。 “测试”之后有一个不必要的支撑。
应该是:
<set-payload value="#[['STATUS':'OKAY','NEXT':'Test','TEXT':flowVars['myVariable']]]"/>