我最近问过一个问题here,我问过如何从Mule Flow引用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>
我的问题包括两个部分,首先是有一种方法可以在启动后重新初始化流程,和/或如何在初始化之前将值存储在mule-context注册表中?
提前致谢。
答案 0 :(得分:1)
注册表与Spring共享,您可以使用SpEL或MethodInvokingFactoryBean注册一些java.lang.String bean。
但是,对于这种情况,如果您没有在mule之外检索它,我建议使用jasypt。