<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)  編輯  收藏


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


    網站導航:
     
    主站蜘蛛池模板: 亚洲av无码一区二区三区人妖 | 久久精品无码一区二区三区免费 | 亚洲高清偷拍一区二区三区| 亚洲AV性色在线观看| 国产va免费精品观看精品| 亚洲美女aⅴ久久久91| 97久久免费视频| 亚洲一卡二卡三卡| 成年女人视频网站免费m| 亚洲性色AV日韩在线观看| 国产精品极品美女免费观看| 免费看又黄又爽又猛的视频软件| 亚洲第一永久AV网站久久精品男人的天堂AV| 亚洲AV无码一区二区三区网址| 亚洲国产一区二区视频网站| a在线免费观看视频| 自怕偷自怕亚洲精品| 成年女人看片免费视频播放器 | 国产成人+综合亚洲+天堂| ZZIJZZIJ亚洲日本少妇JIZJIZ| 中文字幕不卡高清免费| 久久亚洲sm情趣捆绑调教| 最新免费jlzzjlzz在线播放| 亚洲AV无码成人精品区日韩| 亚洲精品自产拍在线观看| 中国人xxxxx69免费视频| 中国亚洲呦女专区| 亚洲中文字幕伊人久久无码| 99久久免费观看| 日韩亚洲综合精品国产| 亚洲VA中文字幕无码一二三区 | 亚洲高清无码综合性爱视频| 免费h视频在线观看| 亚洲综合av一区二区三区不卡 | 成人网站免费看黄A站视频| 亚洲国产av美女网站| 亚洲美女在线国产| 97视频免费在线| 亚洲免费日韩无码系列| 亚洲av日韩综合一区久热| 无码国产精品久久一区免费 |