如何在 mule 的表达式组件中设置流变量

how to set flow variables inside expression component in mule

<set-variable variableName="tempId" value="8000" doc:name="Variable" />
<expression-component doc:name="Expression">
<![CDATA[
temp1 =  message.payload.getRootElement().selectNodes('//palns/*');
foreach (plan1 : temp1){
plan1.selectSingleNode('planid').text = #[flowVars.tempId];
}       ]]></expression-component>

以上是我的代码。我无法在表达式组件内设置流变量值。 如果我像下面这样硬编码我的值 plan1.selectSingleNode('planid').text = '4000'; 这是工作。

但我想要我的流变量值。有什么想法吗?

只需删除表达式包装器 #[],因为它在表达式组件中不需要:

plan1.selectSingleNode('planid').text = flowVars.tempId;
<set-variable variableName="tempId" value="8000" doc:name="Variable" />
<expression-component doc:name="Expression">
<![CDATA[
temp1 =  message.payload.getRootElement().selectNodes('//palns/*');
foreach (plan1 : temp1){
plan1.selectSingleNode('planid').text = flowVars.tempId;
}       ]]></expression-component>

表达式组件不带#[]