2017-08-06 8 views
0

フローAでセッション変数をtrueに設定しています。セッションvarが真であるのに常にnullになっているかどうかを定期的にチェックする別のフローBのポーリングがあります。フローBのポーリングでセッションのvar値がnullの場合ミュールからMule Session vars null in poll

<http:listener-config name="HTTP_Listener_Configuration" host="0.0.0.0" port="8081" doc:name="HTTP Listener Configuration"/> 
<flow name="poll-session-varFlow"> 
    <http:listener config-ref="HTTP_Listener_Configuration" path="/sessionvar" doc:name="HTTP"/> 
    <logger message="In flow A..." level="INFO" doc:name="Logger"/> 
    <set-session-variable variableName="sVar" value="#[true]" doc:name="Session Variable"/> 
</flow> 
<flow name="poll-session-varFlow1"> 
    <poll doc:name="Poll"> 
     <logger message="Polling..." level="INFO" doc:name="Logger"/> 
    </poll> 
    <logger message="value of sVar : #[sessionVars.sVar]" level="INFO" doc:name="Logger"/> 
</flow> 

答えて

1

Variable Scope DOC:セッション変数トランスで設定

セッション変数に関係なく輸送障壁の、メッセージ全体のライフサイクル持続します。

あなたは何とかフローBにおける流れAから生成されたポーリングメッセージでない限り、あなたはフローB投票がセッションの独自のセットを使用して新しいメッセージを生成しているため、セッションvarはおそらくnullであるフローAからセッション変数にアクセスすることはできませんヴァルス。

0

変数の設定方法を共有できますか? これは、変数を使用して、それを使用するフローを参照する方法です。

<set-variable variableName="ImportMonth" value="#[payload]" doc:name="Set Month"/> 
<flow-ref name="another-flow" doc:name="another-flow"/> 

これは私が、私はこれが役に立てば幸い「別の流れ」でその変数の中で何か

<logger message="#[flowVars['ImportMonth']]" level="INFO" doc:name="Logger"/> 

があることを検証しています方法です。