1

最近、Mule フローから Mule レジストリ内の String オブジェクトを参照する方法について、ここで質問しました。私の現在の問題は、フローが初期化される前にこれをレジストリに入力できないことです。

したがって、次のセグメント (password="#app.registry['password']]) では常に null が使用され、接続に失敗します。

<sfdc:config name="ConfigurableSalesforceConnection"username="${sfdc.username}"password="#app.registry['password']]"securityToken="${sfdc.securityToken}"doc:name="Salesforce" url="${sfdc.url}" />

とりわけ、フローにリスナーを追加しましたが、これは値を追加するのが遅すぎて、フローはすでに初期化されています。

<notifications>
    <notification event="CONTEXT"/>
    <notification-listener ref="Initializer"/>
</notifications>
<spring:beans>
    <spring:bean id="Initializer" name="Initializer"
        class="initializer.InitAccountSync" />
</spring:beans>

私の質問は 2 つの部分で構成されています。まず、起動後にフローを再初期化する方法はありますか?また、初期化の前にミュール コンテキスト レジストリに値を保存するにはどうすればよいですか?

前もって感謝します。

4

1 に答える 1

1

レジストリは Spring と共有されます。SpEL または MethodInvokingFactoryBean を使用して、いくつかの java.lang.String Bean を登録できます。

ただし、この場合、ミュールの外部で取得しない場合は、jasyptを活用することをお勧めします。

于 2013-01-15T14:36:31.480 に答える