【发布时间】:2017-11-26 05:54:12
【问题描述】:
我定义了一个 spring bean 来处理我的应用程序的资源包,如下所示:
<spring:bean id="renewMobileEngagementApiMessages" class="org.springframework.context.support.ResourceBundleMessageSource">
<spring:property name="basename" value="messages/renew-mobile-engagement-api-messages"></spring:property>
<spring:property name="defaultEncoding" value="UTF-8"></spring:property>
<spring:property name="fallbackToSystemLocale" value="false"></spring:property>
</spring:bean>
在我的应用程序中,我可以在变量或记录器对象中访问它,例如使用以下 MEL 命令:
#[app.registry.renewMobileEngagementApiMessages.getMessage('error.clic_unavailable.description', null, sessionVars.REQUESTED_LOCALE)]
它按预期正确返回我的属性,直到这里没有问题。
问题是现在我需要在 dw:transform-message 中访问我的属性,但我不知道该怎么做。我尝试使用全局函数,但不知道如何访问我的“renewMobileEngagementApiMessages”对象引用然后调用“getMessage”方法。
任何帮助都会很棒。提前致谢!
【问题讨论】:
-
为什么不能通过属性占位符docs.mulesoft.com/mule-user-guide/v/3.8/… 定义它,然后在dataweave 外部使用${..} 或在dataweave 内部使用
p('propName')访问属性? -
因为我需要国际化。我对每种语言都有一个属性文件,我使用 spring 资源包访问它们。
标签: mule resourcebundle anypoint-studio dataweave