<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    StevenBot-Saltsam

    眼睛能裝下世界,為何卻裝不下眼淚? 一只風箏一輩子只為一根線冒險。 那不是一場游戲,為何總有一根線牽著心懷,隱隱作疼? 那不是一段邂逅,為何飄在橋上的影子,總纏進夢鄉? 那不是一個夢境,為何你的溫柔私語,總是不經意的響起?

    導航

    <2025年7月>
    293012345
    6789101112
    13141516171819
    20212223242526
    272829303112
    3456789

    統計

    常用鏈接

    留言簿

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    datas link

    OSChinal Sources codes Library

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    Struts1.2里提交中文表單到ActionForm后的亂碼問題

     由于Struts框架直接把表單數據發送給了ActionForm,所以這里面沒有對HttpRequestServlet進行SetCharacterEncoding,所以默認是按照ISO-8859-1(參見Tomcat 源代碼中的org.apache.catalina.connector.HttpRequestBase中的protected void parseParameters()方法),

        解決的方法,就是在表單提交到ActionForm之前對request進行編碼。
    第一種方法,就是寫一個過濾器,對所有請求進行過濾

    過濾器代碼:


    package com.first.struts.filters;

    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;

    public class SetCharacterEncodingFilter implements Filter {

    private String encoding;
    private FilterConfig filterConfig = null;

    public void destroy() {
      this.encoding = null;
      this.filterConfig = null;

    }

    public void doFilter(ServletRequest request, ServletResponse response,
      FilterChain chain) throws IOException, ServletException {
      request.setCharacterEncoding(this.encoding);
      chain.doFilter(request, response);
    }

    public void init(FilterConfig filterConfig) throws ServletException {
      this.encoding = filterConfig.getInitParameter("encoding");
    }

    }



    配置文件web.xml


      <filter>
      <filter-name>Set Character Encoding</filter-name>
      <filter-class>com.first.struts.filters.SetCharacterEncodingFilter</filter-class>
      <init-param>
      <param-name>encoding</param-name>
      <param-value>GBK</param-value>
      </init-param>
    </filter>

    <filter-mapping>
      <filter-name>Set Character Encoding</filter-name>
      <url-pattern>/*</url-pattern>
    </filter-mapping>
      </filter-mapping>




    第二種方法是替換默認的控制器org.apache.struts.action.ActionServlet
    子類代碼:
    import java.io.IOException;
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import org.apache.struts.action.ActionServlet;

    public class SetEncodingActionServlet extends ActionServlet {
    protected void process(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
      // TODO Auto-generated method stub
      String encoding = getInitParameter("encoding");
      request.setCharacterEncoding(encoding);
      super.process(request, response);
    }
    }


    配置文件web.xml
    <servlet>
        <servlet-name>testAction</servlet-name>
        <servlet-class>jp.co.ricoh.gtis.others.profile.controllers.SetEncodingActionServlet</servlet-class>
        <init-param>
          <param-name>config</param-name>
          <param-value>/WEB-INF/struts-config.xml</param-value>
        </init-param>
        <init-param>
          <param-name>encoding</param-name>
          <param-value>Shift_JIS</param-value>
        </init-param>
        <load-on-startup>2</load-on-startup>
      </servlet>

      <servlet-mapping>
        <servlet-name>testAction</servlet-name>
        <url-pattern>*.testdo</url-pattern>
      </servlet-mapping>
    此例,凡是通過*.testdo來請求的數據,都會經過參數encoding設定的值來編碼

    posted on 2011-10-07 18:06 Steven_bot 閱讀(1235) 評論(0)  編輯  收藏


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 91福利免费体验区观看区| 日韩在线视精品在亚洲| 亚洲va中文字幕无码| 免费播放特黄特色毛片| 亚洲综合精品伊人久久| 色婷婷7777免费视频在线观看| 亚洲av激情无码专区在线播放| 青柠影视在线观看免费| 亚洲AV无码一区二区二三区软件| 99免费在线视频| 亚洲国产天堂久久综合网站| 8888四色奇米在线观看免费看| 亚洲美女视频免费| 波多野结衣在线免费视频| 免费在线黄色网址| 曰批全过程免费视频观看免费软件| 亚洲AⅤ视频一区二区三区| 一级特黄aaa大片免费看| 久久精品国产亚洲5555| 亚洲av午夜精品无码专区| 成人免费午夜无码视频| 亚洲精品国产摄像头| 亚洲日韩涩涩成人午夜私人影院| 亚洲情A成黄在线观看动漫软件 | 免费a级毛片高清视频不卡 | 曰批视频免费40分钟试看天天| 亚洲AV无码乱码在线观看| 国产激情久久久久影院老熟女免费| 2021精品国产品免费观看| 亚洲综合网美国十次| 免费国产99久久久香蕉| 亚洲理论精品午夜电影| 韩国日本好看电影免费看| 久久精品国产精品亚洲精品| 在线a免费观看最新网站| 亚洲精品色在线网站| 亚洲av色福利天堂| 免费看美女让人桶尿口| a级成人毛片免费视频高清| 亚洲三级视频在线观看 | 国产精品亚洲а∨无码播放|