-
28-09-2019 - |
题
我将适用于远程用户浏览器语言设置的Web应用程序适应我的Web应用程序有一些问题。我为此使用了ResourceBundleMessagesSource。看起来像这样:
<bean id="messageSource" class="org.springframework.context.support.ResourceBundleMessageSource">
<property name="basename" value="resources/messages" /> </bean>
我有两个.properties文件:
消息
messages_ru.properties
它们位于SRC/资源/消息中。
我想这样的方式配置我的应用程序,当远程用户浏览器语言设置包含俄语时,我的应用程序应使用俄罗斯消息(messages_ru),否则(如果不配置语言或不是俄语),则应使用meessages.properties(IT)包含英文消息)。
当我在浏览器中设置俄语时,它可以正常工作。当我删除所有设置时,它也显示出俄罗斯(我认为这取决于系统语言环境设置)。当我设置另一种语言时,它也会向我展示俄罗斯的信息。
使我的应用显示英语消息的唯一方法是重命名消息。但是,我想使我的应用程序用于所有语言设置(如果需要的话,则使用俄语,以及其他任何其他国家和任何其他国家的英语)。
有任何想法吗?
解决方案
您需要设置
<bean id="messageSource"
class="org.springframework.context.support.ReloadableResourceBundleMessageSource">
<property name="basename" value="resources/messages" />
<property name="fallbackToSystemLocale" value="false" />
</bean>
在这种情况下,春天将使用 messages.properties
作为后备,因此它应在您的应用程序的“默认场所”中包含消息。
不隶属于 StackOverflow