夢幻之旅

          DEBUG - 天道酬勤

             :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            671 隨筆 :: 6 文章 :: 256 評論 :: 0 Trackbacks
          1.過濾器
          package com.i18n;

          import java.io.IOException;

          import javax.servlet.Filter;
          import javax.servlet.FilterChain;
          import javax.servlet.FilterConfig;
          import javax.servlet.ServletException;
          import javax.servlet.ServletRequest;
          import javax.servlet.ServletResponse;
          import javax.servlet.http.HttpServletRequest;

          public class I18nFilter implements Filter
          {
              
              
          public void destroy()
              
          {}
              
              
          public void doFilter(ServletRequest req, ServletResponse resp,
                      FilterChain filterChain) 
          throws IOException, ServletException
              
          {
                  HttpServletRequest request 
          = (HttpServletRequest) req;
                  MyRequestWrapper wrapper 
          = new MyRequestWrapper(request);
                  filterChain.doFilter(wrapper, resp);
              }

              
              
          public void init(FilterConfig arg0) throws ServletException
              
          {}
          }



          2.過濾器配置
          <filter>   
                  
          <filter-name>i18nFilter</filter-name>   
                  
          <filter-class>com.xxx.common.filter.I18nFilter</filter-class>   
              
          </filter>   
              
          <filter-mapping>   
                  
          <filter-name>i18nFilter</filter-name>   
                  
          <url-pattern>*</url-pattern>   
             
          </filter-mapping>  


          3.包裝類
          package com.i18n;

          import java.util.Locale;

          import javax.servlet.http.HttpServletRequest;
          import javax.servlet.http.HttpServletRequestWrapper;
          import javax.servlet.http.HttpSession;

          public class MyRequestWrapper extends HttpServletRequestWrapper
          {
              
              
          private Locale locale = null;
              
              
          public MyRequestWrapper(HttpServletRequest request)
              
          {
                  
          super(request);
                  HttpSession session 
          = request.getSession();
                  locale 
          = (Locale) session.getAttribute("WW_TRANS_I18N_LOCALE");
              }

              
              
          public String getHeader(String name)
              
          {
                  String value 
          = super.getHeader(name);
                  
          if ("Accept-Language".equals(name) && locale != null)
                  
          {
                      value 
          = locale.getLanguage() + "_" + locale.getCountry()
                              
          + value.substring(6, value.length());
                  }

                  
          return value;
              }

              
              
          public Locale getLocale()
              
          {
                  
          if (locale != null)
                  
          {
                      
          return locale;
                  }

                  
          return super.getLocale();
              }

              
          }

          posted on 2012-01-31 13:21 HUIKK 閱讀(441) 評論(0)  編輯  收藏 所屬分類: Struts
          主站蜘蛛池模板: 靖边县| 新邵县| 扎鲁特旗| 崇礼县| 建阳市| 南和县| 奇台县| 玉林市| 土默特左旗| 开原市| 申扎县| 巍山| 津南区| 临桂县| 元江| 扎囊县| 惠水县| 英德市| 陕西省| 新疆| 手游| 天气| 灌南县| 西平县| 台州市| 航空| 台南县| 崇礼县| 广汉市| 南澳县| 邹城市| 内丘县| 比如县| 日照市| 曲松县| 乌鲁木齐市| 麟游县| 唐山市| 杨浦区| 始兴县| 云阳县|