[英]Mule ESB. How to Save variables value on the session in the “flow”?
ule子ESB。 如何在“流”中的會話上保存變量值?
我的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>
在控制台中,我看到以下內容:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ 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
----------
但我想要
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
我怎樣才能做到這一點? 請幫忙 :)
在設置之前,您無法在流中檢索會話變量。 使用對象存儲模塊在調用/流實例之間持久存儲數據。
試用“設置會話變量”,以便創建的變量作用域跨多個流。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.