我有一个带有2个链接的jsp文件,它将属性lang设置为en或de。
我还有一条消息,需要用相应的语言(英语或德语)进行更改
我有2个属性文件与代码。我为区域设置制作了配置文件
我尝试了不同的类和属性组合,但我永远不会改变消息。
这是我的代码:
jsp文件:
Language : <a href="?lang=en">English</a>|<a href="?lang=de">German</a>
<h3>
<spring:message code="test" text="default text" />
</h3>
Current Locale : ${pageContext.response.locale} ---- ${pageContext.request.locale}
applicationContext.locale.xml文件:(这是在applicationContext.xml中导入的)
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">
<bean id="messageSource"
class="org.springframework.context.support.ReloadableResourceBundleMessageSource">
<property name="basename" value="WEB-INF/locale/welcome" />
<property name="cacheSeconds" value="-1" />
<property name="defaultEncoding" value="UTF-8"/>
</bean>
<bean id="localeChangeInterceptor"
class="org.springframework.web.servlet.i18n.LocaleChangeInterceptor">
<property name="paramName" value="lang" />
</bean>
<bean id="localeResolver" class="org.springframework.web.servlet.i18n.CookieLocaleResolver">
<property name="defaultLocale" value="en"/>
</bean>
<bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="interceptors">
<list>
<ref bean="localeChangeInterceptor"/>
</list>
</property>
</bean>
我有2个属性文件: welcome.properties和welcome_de.properties。两者都有代码测试和不同的值。
问题是,如果我设置默认的Locale,它将始终采用它。如果我没有设置它,语言环境解析器将采用请求的语言环境。
我无法设置从url参数中获取的响应的语言环境。
你有什么建议吗?
谢谢:)
答案 0 :(得分:0)