标题:Struts2 的 i18n 通过action到jsp可以切换语言,jsp通过<a>直接到jsp语言就 ...
取消只看楼主
ihlx523
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2015-12-13
 问题点数:0 回复次数:0 
Struts2 的 i18n 通过action到jsp可以切换语言,jsp通过<a>直接到jsp语言就不能切换,why??
最近使用Struts2 的 i18n 做网站的中英文国际化,第一次使用国际化,结果遇到这样一个问题:
我在show.jsp切换语言到英文,然后通过action跳转到to.jsp,能正常显示英文, 再在to.jsp中通过action跳转到index.jsp也能显示英文,每个action 都只做跳转用,没有其他代码,
,但是如果我在show.jsp切换语言到英文后,直接通过<a>跳转到to.jsp,还是只能显示中文 这是为什么呢,请大家帮助一下,谢谢!

struts.xml 中有配置 <constant name="struts.custom.i18n.resources" value="message"/>
中英文语言的propeties 有

这是切换英语的代码 <a href="test.action?languageName=en&request_locale=en_US">english</a><br />

这个是切换语言时的action
private String languageName;

public String getLanguageName() {
return languageName;
}
public void setLanguageName(String languageName) {
this.languageName = languageName;
}

public String test(){
Locale locale = Locale.getDefault();
if(languageName.equals("zh")){
locale = new Locale("zh","CN");
}else if(languageName.equals("en")){
//locale = Locale.US;
locale = new Locale("en","US");
}
ServletActionContext.getRequest().getSession().setAttribute("WW_TRANS_I18N_LOCALE",locale);
ServletActionContext.getContext().setLocale(locale);
//ActionContext.getContext().setLocale(locale);
return "success";
}
搜索更多相关主题的帖子: message action 做网站 英语 英文 message action 做网站 英语 英文 
2015-12-13 14:43



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-460185-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015410 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved