2012-03-05 73 views
2

我希望在瀏覽器Cookie中保存請求語言環境,以便下次創建新用戶會話時 讀取此「語言環境」Cookie並顯示特定頁面。 需要一種方式來做到這一點struts2Struts2在Cookie中保存語言環境

+0

你可以設置Cookie像往常一樣的方式,後來就可以使用cookie攔截閱讀cookies – 2012-03-05 11:22:08

回答

0

Struts dosn't沒有這個作爲構建功能。

首先,你需要保存一個cookie使用JavaScript

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 
}