Mule:在调用组件内设置会话变量
在用于调用Springbean特定方法的调用组件内设置会话变量的最佳方法Mule:在调用组件内设置会话变量,mule,mule-studio,mule-component,Mule,Mule Studio,Mule Component,在用于调用Springbean特定方法的调用组件内设置会话变量的最佳方法 <invoke object-ref="serviceBean" method="asyncFlowMethod" doc:name="Invoke3" methodArguments="#[sessionVars['event']]"/> public void asyncFlowMethod(String event) { Inside this method i need to se
<invoke object-ref="serviceBean" method="asyncFlowMethod" doc:name="Invoke3" methodArguments="#[sessionVars['event']]"/>
public void asyncFlowMethod(String event) {
Inside this method i need to set a session variable
}
公共void asyncFlowMethod(字符串事件){
在这个方法中,我需要设置一个会话变量
}
我建议您更改接收多消息的方法,并使用它访问会话变量:
public void asyncFlowMethod(MuleMessage message) {
String event = message.getProperty("event", PropertyScope.SESSION);
message.setProperty("event", event + "test", PropertyScope.SESSION);
}
并使用
<invoke object-ref="serviceBean" method="asyncFlowMethod" doc:name="Invoke3" methodArguments="#[message]"/>
#[message]是messagecontext,而不是MuleMessageMessageContext出站属性,即使在方法中设置的属性在该方法之外不可见。@NAZARREHMAN尝试@DavidDossot在此提出的解决方案,以访问muleeEventRequestContext.getEvent()