ESB MULE将参数传递给java方法
我使用MULE版本3.3.0 CE,我想从入站的头中获取一些值,然后将其传递给java方法,在java方法中对传递的值进行一些更改,最后再次将其从java方法传递给出站ESB MULE将参数传递给java方法,mule,invoke,payload,inbound,Mule,Invoke,Payload,Inbound,我使用MULE版本3.3.0 CE,我想从入站的头中获取一些值,然后将其传递给java方法,在java方法中对传递的值进行一些更改,最后再次将其从java方法传递给出站 让Java组件实现org.mule.api.lifecycle.Callable 在onCall中,您可以得到如下信息: MuleMessage message=eventContext.getMessage() 现在,您可以获得入站属性: 对象someProp=message.getInboundProperty(“some_
与将Java bean绑定到Mule API(使用
Callable
)不同,您可以仅使用MEL来实现这一点,例如:
<invoke object-ref="yourBean"
method="yourMethod"
methodArguments="#[message.inboundProperties['inboundPropertyName']]" />
<set-property propertyName="outboundPropertyName"
value="#[payload]" />
谢谢你的回复。:)你能再解释一下吗?首先,我在.mflow文件中设置了一个变量,然后在java类中调用get it??在第二种形式中,flowVars/InvocationProperties是否被视为入站、出站或其他内容?其他内容:它们是流变量,即在
flowVars
映射中可访问,并且,除非禁用此功能,否则它们是MEL脚本的全局变量。
<expression-component>
propVal = app.registry.yourBean.yourMethod(message.inboundProperties['inboundPropertyName']);
message.outboundProperties['outboundPropertyName'] = propVal;
</expression-component>