Mule MEL,如何获得房产价值?

时间:2014-10-17 15:24:50

标签: mule

在Mule MEL中,如何获得属性值?

在java代码中,我这样做了:

eventContext.getMessage().setInvocationProperty("amount", 100);

我尝试了这些选项

#[message.invocationProperty.invocation]
#[message.invocationProperty('invocation')]
#[message.getInvocationProperty().get('invocation')]

我意识到该消息是org.mule.el.context.MessageContext的一个实例,那么正确的语法是什么?

5 个答案:

答案 0 :(得分:3)

尝试#[message.inboundProperties['propertyName']]#[message.invocationProperties['propertyName']]

答案 1 :(得分:3)

如果使用范围INVOCATION(使用Message Enricher或Variable)设置变量,则可以使用以下语法获取变量:

#flowVars['your_Variable_Name']

答案 2 :(得分:0)

您的评论的答案

<set-variable variableName="amount" value="message.invocationProperties['amount']" />

解决方案

<set-variable variableName="amount" value="#[message.invocationProperties['amount']]" />

答案 3 :(得分:0)

要获取消息的Invocation属性,请遵循以下语法:

#[flowVars.parameter]#[flowVars['paramater']]

答案 4 :(得分:0)

虽然sintaxis几乎相同,但它取决于属性变量的范围,但最常用的方法是:

#[flowVars['flow_var_name']]

在我个人看来我不建议使用:

#[flowVars.variable]

因为在一些带有许多messageContext开关的复杂环境中,变量可能会丢失。我建议您查看显示如何处理属性和变量的下一个post from Mulesoft oficial blog