我有一些问题,使我的网页应用程序适应远程用户浏览器语言设置。我用ResourceBundleMessageSource做的。看起来是这样的:
<bean id="messageSource" class="org.springframework.context.support.ResourceBundleMessageSource">
<property name="basename" value="resources/messages" /> </bean>我有两个.properties文件:
它们位于src/resources/messages中。
我想以这样的方式配置我的应用程序,当远程用户浏览器语言设置包含俄语时,我的应用程序应该使用俄语消息(messages_ru),否则(如果没有配置语言或它不是俄语),它应该使用meessages.properties (它包含英语消息)。
当我在浏览器中安装俄语时,它工作得很好。当我删除所有设置时,也会显示俄语(我认为这取决于系统区域设置)。当我设置另一种语言时,它也会向我展示俄语信息。
使我的应用程序显示英语信息的唯一方法是将messages.properties重命名为messages_en.properties,并设置为browser english lang。但我想让我的应用程序被所有的语言设置所采用(如果需要的话,它使用俄语,在任何其他设置和任何其他国家使用英语)。
有什么想法吗?
发布于 2010-11-25 23:36:40
你需要设置
<bean id="messageSource"
class="org.springframework.context.support.ReloadableResourceBundleMessageSource">
<property name="basename" value="resources/messages" />
<property name="fallbackToSystemLocale" value="false" />
</bean> 在本例中,Spring将使用messages.properties作为后盾,因此它应该包含应用程序的“默认”区域设置中的消息。
https://stackoverflow.com/questions/4281504
复制相似问题