Struts2在cookie中保存区域设置

Struts2在cookie中保存区域设置,struts2,Struts2,我希望在浏览器cookie中保存请求区域设置,以便下次创建新用户会话时使用 读取此“区域设置”cookie并显示特定页面。 需要一种方法在struts2中实现这一点Struts没有内置功能 首先,您需要使用JavaScript保存cookie document.cookie = "locale_cookie=fa_IR"; 第二步扩展I18nInterceptor并更改getLocaleFromParam。您可以添加从cookie读取功能(也可以扩展其他方法): 该方法应如下所示: @Over

我希望在浏览器cookie中保存请求区域设置,以便下次创建新用户会话时使用 读取此“区域设置”cookie并显示特定页面。
需要一种方法在struts2中实现这一点Struts没有内置功能

首先,您需要使用JavaScript保存cookie

document.cookie = "locale_cookie=fa_IR";
第二步扩展
I18nInterceptor
并更改
getLocaleFromParam
。您可以添加从cookie读取功能(也可以扩展其他方法):

该方法应如下所示:

@Override
getLocaleFromParam () {

  //read cookie and find cookie which its name is locale_cookie
  Cookie[] cookies = ServletActionContext.getRequest().getCookies();

  for (int i = 0; i < cookies.length; i++) {
       if( "locale_cookie".equals(cookie.getName()){
          return LocalizedTextUtil.localeFromString( cookie.getName());
        }       
   }
  ..............
  //The rest method
}
@覆盖
getLocaleFromParam(){
//读取cookie并查找其名称为locale\u cookie的cookie
Cookie[]cookies=ServletActionContext.getRequest().getCookies();
for(int i=0;i
Struts没有这种内置功能

首先,您需要使用JavaScript保存cookie

document.cookie = "locale_cookie=fa_IR";
其次,扩展
I18nInterceptor
并更改
getLocaleFromParam
。您可以添加从cookie读取的功能(您也可以扩展其他方法):

该方法应如下所示:

@Override
getLocaleFromParam () {

  //read cookie and find cookie which its name is locale_cookie
  Cookie[] cookies = ServletActionContext.getRequest().getCookies();

  for (int i = 0; i < cookies.length; i++) {
       if( "locale_cookie".equals(cookie.getName()){
          return LocalizedTextUtil.localeFromString( cookie.getName());
        }       
   }
  ..............
  //The rest method
}
@覆盖
getLocaleFromParam(){
//读取cookie并查找其名称为locale\u cookie的cookie
Cookie[]cookies=ServletActionContext.getRequest().getCookies();
for(int i=0;i
您可以按常规方式设置Cookie,以后可以使用Cookie拦截器读取Cookie您可以按常规方式设置Cookie,以后可以使用Cookie拦截器读取Cookie