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

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

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

    java技術研究

    統計

    留言簿(3)

    閱讀排行榜

    評論排行榜

    關于tomcat的編碼問題

    webwork的xwork.xml里面配置的轉發帶中文參數就是亂碼,這里的vcStatus是中文就亂。 
    <result name="success" type="redirect">
    /haplayadmin/initManageThread.action?vcStatus=${vcStatus}
    </result>

    1.我們都知道tomcat的默認編碼是iso8859
    2.webwor的默認編碼是iso8859,而webwork.i18n.encoding = utf-8這里配置的是希望轉換成的字符集
    3.在轉換前的action中得到的參數,如果是以get方式得到的那么應該是iso8859(tomcat進行了從utf-8(這個是頁面中的contentType決定的)到iso8859的轉換)。
    如果是post方式得到的則應該是utf-8(因為webwork把從tomcat得到的參數setCharactorEncoding為webwork.properties配置的字符集,通常我們設置的和頁面字符集一樣)。
    4.這樣我們在以redirect的方式轉換到actionB的時候顯然是以get方式提交了,webwork會執行從iso8859到utf-8的轉換(webwork.properties里面的配置進行轉換)。這時就會出問題:假設前面是以get方式提交的,那么就會從iso8859到utf-8,記住這時我們得到了utf-8編碼的字符集.
    5.接著,tomcat很老實的把參數按照頁面中contentType設定的值(這里是utf-8)轉換成iso8859字符集,由于是get方式提交則不會經過webwork的setCharactorEncoding,那么我們得到的是iso8859字符集。
    6.在轉發后的action中就得到了iso8859編碼的字符集,我們只要把這個字符集進行從iso8859到utf-8的轉換即可得到需要的參數。

    7.然而假設第三步假設是以post方式提交的,我們則得到的是utf-8的字符集編碼,在第四步webwork在執行從iso8859到utf-8的轉換中就把參數的原始字符集寫錯了,因為我們得到的是utf-8的原始字符集而不是iso8859。這時轉換編碼的參數永遠也轉不回來了。

    注:實際上webwork在解析xml中的轉發表達式的時候進行的字符集轉換,在其他地方則不會出現這樣的問題。

    posted on 2007-05-29 16:52 小秦 閱讀(1940) 評論(0)  編輯  收藏


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


    網站導航:
     
    主站蜘蛛池模板: 99精品视频在线免费观看| 一级特黄aaa大片免费看| 永久黄色免费网站| 亚洲人成电影亚洲人成9999网| 中文字幕一区二区三区免费视频| 亚洲国产aⅴ综合网| 特级毛片在线大全免费播放| 亚洲综合最新无码专区| 中文字幕在线免费播放| 亚洲国产精品无码AAA片| 99在线观看视频免费| 亚洲免费福利视频| 天天摸天天操免费播放小视频| 亚洲av日韩aⅴ无码色老头| 免费A级毛片在线播放不收费| 产传媒61国产免费| 亚洲AV色香蕉一区二区| 久久精品无码一区二区三区免费| 亚洲精品无码久久久久APP| 亚洲精品成人片在线观看| 男女作爱在线播放免费网站| 久久亚洲AV成人无码| 全免费a级毛片免费看无码| 免费人成网上在线观看| 亚洲五月激情综合图片区| 无码国产精品一区二区免费式直播| 亚洲人成无码网站在线观看| 亚洲视频在线精品| 免费下载成人电影| 国产福利免费视频 | 无码国产精品一区二区免费模式 | 日韩在线视频免费| 久久精品国产亚洲AV果冻传媒| 成年黄网站色大免费全看| 免费国产a理论片| 亚洲视频一区在线| 亚洲无码视频在线| 我们的2018在线观看免费高清| 国产午夜亚洲精品不卡| 久久久久亚洲精品日久生情| 亚洲福利视频一区二区|