Struts2 を使用している場合はLocaleProvider
、次のような独自のクラスを作成できます。
public class ChangeLocale implements LocaleProvider {
private String lan;
public String getLan() {
return lan;
}
public void setLan(String lan) {
this.lan = lan;
}
public Locale getLocale() {
Locale locale=null;
// Switch language between Chinese and English
if("chinese".equals(lan)){
locale=new Locale("zh", "cn");
}else if("english".equals(lan)){
locale=new Locale("en", "US");
}
return locale;
}
}
でLocaleAction
:
public String execute(){
ActionContext ac=ActionContext.getContext();
ac.setLocale(getLocale());
return "success";
}
jspで:
<a href="<s:property value="chinese"/>"><s:text name="china"></s:text></a>
<a href="<s:property value="english"/>"><s:text name="us"></s:text></a>