在我的应用程序中,用户是从登录页面动态选择语言环境的,我将所选的语言环境保存在Cookie中。
在我的Web应用程序中发生重定向时,我面临与I18n相关的问题。
当我通过附加当前语言环境通过URL重定向页面时,我的应用程序语言仍与所选语言相同(即,在这种情况下工作正常),但是当我通过struts.xml文件中定义的struts重定向重定向到下一页时,语言环境更改为默认值(在我的情况下为英文)。
例如:
如果是-<result name="success" type="redirect">
,则区域设置将更改为默认设置。
如果我删除了type=redirect
,那么它可以正常工作,但是我的表单将被提交两次。
那么有什么方法可以在运行时将语言环境附加到struts重定向上吗?
这是我的拦截器堆栈之一:
<interceptor-stack name="sessionValidateStack">
<interceptor-ref name="auditTrail"></interceptor-ref>
<interceptor-ref name="sessionCheck"></interceptor-ref>
<interceptor-ref name="service">
<param name="code">DG</param>
<param name="interfaceType">WEB</param>
</interceptor-ref>
<interceptor-ref name="defaultStack"></interceptor-ref>
<interceptor-ref name="expHandler"></interceptor-ref>
</interceptor-stack>
最佳答案
在参数中添加request_locale=<your_language_key>