Mule ESB. How to Save variables value on the session in the "flow" ?
My xml
<tcp:connector name="TCP1" doc:name="TCP connector" clientSoTimeout="1000000"
receiveBacklog="0" receiveBufferSize="0" sendBufferSize="0" serverSoTimeout="1000000"
socketSoLinger="0" validateConnections="true" >
<tcp:direct-protocol payloadOnly="true"/>
</tcp:connector>
<flow name="tcp_testFlow2" doc:name="tcp_testFlow2">
<tcp:inbound-endpoint exchange-pattern="request-response" address="tcp://10.0.1.4:2222" responseTimeout="10000" connector-ref="TCP" doc:name="TCP"/>
<logger message="begin #[sessionVars['id_device']] - #[flowVars['id_dev_var']]" level="INFO" doc:name="Copy_of_Copy_of_Logger"/>
<choice doc:name="Choice">
<when expression="sessionVars['id_device']>0">
<logger message="choice #[sessionVars['id_device']] - #[flowVars['id_dev_var']]" level="INFO" doc:name="Logger"/>
</when>
<otherwise>
<set-session-variable doc:name="Session Variable" value="10" variableName="id_device"/>
<set-variable variableName="id_dev_var" value="10" doc:name="Variable"/>
</otherwise>
</choice>
<logger message="end #[sessionVars['id_device']] - #[flowVars['id_dev_var']]" level="INFO" doc:name="Copy_of_Logger"/>
</flow>
in the console i see this:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ Started app 'tst_tcp' +
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
----------
INFO 2014-03-26 16:17:31,077 [[tst_tcp].TCP.receiver.02] org.mule.api.processor.LoggerMessageProcessor: begin null - null
----------
INFO 2014-03-26 16:17:31,081 [[tst_tcp].TCP.receiver.02] org.mule.api.processor.LoggerMessageProcessor: end 10 - 10
----------
INFO 2014-03-26 16:17:32,090 [[tst_tcp].TCP.receiver.02] org.mule.api.processor.LoggerMessageProcessor: begin null - null
----------
INFO 2014-03-26 16:17:32,092 [[tst_tcp].TCP.receiver.02] org.mule.api.processor.LoggerMessageProcessor: end 10 - 10
----------
INFO 2014-03-26 16:17:33,136 [[tst_tcp].TCP.receiver.02] org.mule.api.processor.LoggerMessageProcessor: begin null - null
----------
INFO 2014-03-26 16:17:33,140 [[tst_tcp].TCP.receiver.02]
org.mule.api.processor.LoggerMessageProcessor: end 10 - 10
----------
but i want
INFO 2014-03-26 16:17:33,136 [[tst_tcp].TCP.receiver.02] org.mule.api.processor.LoggerMessageProcessor: **begin 10 - 10**
----------
INFO 2014-03-26 16:17:33,140 [[tst_tcp].TCP.receiver.02]
org.mule.api.processor.LoggerMessageProcessor: end 10 - 10
how can i do this? Please help :)
You can not retrieve a session variable in a flow before you set it. Use the Object Store Module to persist data between calls / flow instances.
试用“设置会话变量”,以便创建的变量作用域跨多个流。
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.