2012-06-07 52 views
2

我想在Spring中使用ResourceBundleMessageSource。这里是我的项目结构: enter image description here加载资源包:春天

这里是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的子目录中来获得此项工作?

+0

请检查并告诉我,在你的类部署的应用程序文件夹,你都能够看到文件已创建的属性,其中?? –

+0

查看@Kshitij的回答。他是对的。 :-) –

回答

5

你需要给这里的文件夹名称 -

<property name="basename"> 
     <value>resourceBundles/messages</value> 
</property>