2

我正在尝试在 Spring 中使用 ResourceBundleMessageSource。这是我的项目结构: 在此处输入图像描述

这是xml配置:

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

当我尝试加载应用程序上下文时,出现以下异常:

Jun 7, 2012 2:44:00 PM org.springframework.context.support.ResourceBundleMessageSource getResourceBundle
WARNING: ResourceBundle [messages] not found for MessageSource: Can't find bundle for base name messages, locale en_US
Exception in thread "main" org.springframework.context.NoSuchMessageException: No message found under code 'user.welcome' for locale 'en_US'.
    at org.springframework.context.support.AbstractMessageSource.getMessage(AbstractMessageSource.java:135)
    at org.springframework.context.support.AbstractApplicationContext.getMessage(AbstractApplicationContext.java:1192)
    at com.pramati.core.MessageResolver.getMessage(MessageResolver.java:19)

如果我将资源包文件直接放在资源文件夹下,则不会出现此错误。它工作正常。有人可以告诉我如何通过将资源包放在 src/main/resources 的子目录中来完成这项工作吗?

4

1 回答 1

5

您需要在此处提供文件夹名称 -

<property name="basename">
      <value>resourceBundles/messages</value>
</property>
于 2012-06-07T09:34:33.600 回答