0

我已将 Spring 配置 xml 配置为使用“ResourceBundleMessageSource”,并且我试图从资源包文件中获取消息,但是当我要执行时,我得到的日志显示:它找不到给定的资源包姓名。

更准确地说:

WARN org.springframework.context.support.ResourceBundleMessageSource - ResourceBundle [messages] not found for MessageSource: Can't find bundle for base name messages, locale en_US

我的 spring.xml 配置

<bean id="messageSource" class="org.springframework.context.support.ResourceBundleMessageSource">
    <property name="basename">
        <value>messages</value>
    </property>
</bean>

我试图在我的代码中使用的方式:

ResourceBundleMessageSource rbms = (ResourceBundleMessageSource) applicationCtx.getBean("messageSource");
String message = rbms.getMessage("key001", parameters,"default message", null);

还有我的messages.properties的一部分(我把这个文件放在project/src/下)

key001 = Problem occurred while fetching the results from database. Please see log.

我也尝试用 messages_en_US.properites 重命名文件,但没有帮助。

我错过了什么吗?

提前致谢。

4

1 回答 1

1

应用程序运行时,属性文件需要在类路径中;您的 IDE/编译器(和/或 ant/maven 构建过程)是否将 *.properties 复制到“输出”路径?

如果没有,它需要。(尝试手动复制它开始)

于 2012-04-24T06:26:30.160 回答