Xml 使用会话变量中的会话值将map设置为mule 3中的有效负载

Xml 使用会话变量中的会话值将map设置为mule 3中的有效负载,xml,mule,mule-studio,mulesoft,Xml,Mule,Mule Studio,Mulesoft,我在本地主机上有一个GET入站请求。我已经从请求中提取了所有URI参数,并将它们存储在会话变量中。现在我面临的问题是,当我尝试使用会话值将map设置为有效负载时 在寻找正确的方法时,我偶然发现了 这里描述的方法是正确的,在下面的情况下,当我硬编码键值对时,它可以工作 <set-payload value="#[['Test' : 'hjhj' ]]" encoding="UTF-8"/> 但当我使用相同的方法并使用session变量编写以下代码时: <set-sessio

我在本地主机上有一个GET入站请求。我已经从请求中提取了所有URI参数,并将它们存储在会话变量中。现在我面临的问题是,当我尝试使用会话值将map设置为有效负载时

在寻找正确的方法时,我偶然发现了

这里描述的方法是正确的,在下面的情况下,当我硬编码键值对时,它可以工作

<set-payload value="#[['Test' : 'hjhj' ]]"  encoding="UTF-8"/>
但当我使用相同的方法并使用session变量编写以下代码时:

 <set-session-variable variableName="transactionAmount" value="#[message.inboundProperties.'http.query.params'.amount]" doc:name="Session Variable"/>

<set-payload value="#[['Test' : #[sessionVars.transactionAmount] ]]"  encoding="UTF-8"/>
请告诉我如何克服这个问题。我被困在这里面很久了

注意:我正在使用Mule 3.9


提前谢谢

不需要嵌套表达式计算器#[]

试试这个:

<set-payload value="#[['Test' : sessionVars.transactionAmount]]" />

无需嵌套表达式计算器#[]

试试这个:

<set-payload value="#[['Test' : sessionVars.transactionAmount]]" />


为什么要使用会话变量而不是流变量?默认情况下,您应该使用流变量。为什么要使用会话变量而不是流变量?默认情况下,应该使用流变量。
<set-payload value="#[['Test' : sessionVars.transactionAmount]]" />