如何在 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>
表达式组件不带#[]
<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>
表达式组件不带#[]