我在 JSP spring 国际化中遇到了麻烦。我的 dispatcherServlet.xml 包含:
<bean id="localeResolver"
class="org.springframework.web.servlet.i18n.SessionLocaleResolver">
<property name="defaultLocale" value="en" />
</bean>
<bean id="localeChangeInterceptor"
class="org.springframework.web.servlet.i18n.LocaleChangeInterceptor">
<property name="paramName" value="language" />
</bean>
<bean class="org.springframework.web.servlet.mvc.support.ControllerClassNameHandlerMapping" >
<property name="interceptors">
<list>
<ref bean="localeChangeInterceptor" />
</list>
</property>
</bean>
<!-- Application Message Bundle -->
<bean id="messageSource" class="org.springframework.context.support.ReloadableResourceBundleMessageSource">
<property name="basename" value="/WEB-INF/messages/messages" />
<property name="cacheSeconds" value="0" />
<property name="defaultEncoding" value="UTF-8"/>
</bean>
我的jsp包含
<html>
<head>
<title>Admin</title>
</head>
<body>
<a href=<c:url value="/j_spring_security_logout"/>>Logout</a><br/>
Language : <a href="?language=en">English</a>|
<a href="?language=zh_CN">Chinese</a>
<h1>
<spring:message code="only.Admin.allowed.here" text="default text" />
</h1>
Current Locale : ${pageContext.response.locale}
</body>
</html>
默认的 EN 语言可以正常工作,但我无法在单击中文选项时将语言更改为中文。地址栏 URL 更改为/admin?language=en
,/admin? language=zh_CN
但不显示任何结果。
提前致谢。