wiflish
          Loving Life! Loving Coding!
          posts - 98,comments - 98,trackbacks - 0
          問題描述:將應用部署到weblogic后,只要經過sitemesh裝飾過的頁面都出現亂碼,而不經過sitemesh裝飾的頁面都正常顯示。

          問題原因:sitemesh在裝飾頁面時,如果response的contentType為null,則使用java虛擬機屬性值"file.encoding",而該值與操作系統相關,在windows系統下,該值=GBK.由于頁面本身是utf-8編碼的,經過sitemesh裝飾后,使用GBK編碼轉行,產生亂碼。

          問題解決:在應用啟動(如web.xml文件中配置listener,將下面代碼放入listener)時,就將file.encoding屬性設置為UTF-8編碼,這樣就不會出現sitemesh裝飾后的亂碼問題。

          設置代碼:
          Properties prop = System.getProperties();
          prop.put("file.encoding", "utf-8");

          posted on 2008-10-08 08:49 想飛的魚 閱讀(2052) 評論(3)  編輯  收藏 所屬分類: error and solution錯誤及解決記錄

          FeedBack:
          # re: weblogic與sitemesh亂碼問題
          2008-10-08 09:02 | 隔葉黃鶯
          記得在 sitemesh 的配置文件可以設置自己的編碼,不需要設置系統級的編碼的。

          sitemesh 總是那么壞事的,在 Spring 中還要一個特別的 Filter
          com.opensymphony.module.sitemesh.filter.PageFilte  回復  更多評論
            
          # re: weblogic與sitemesh亂碼問題
          2009-04-30 14:28 | josdoc
          Java開源文檔(www.josdoc.com)希望轉載您的這篇文章,若不同意,請告知,謝謝!  回復  更多評論
            
          # re: weblogic與sitemesh亂碼問題
          2009-07-12 17:17 | ycfdonews
          具體的實現能說的詳細點嗎?我這邊只要被裝飾,頁面就會出現亂碼,不裝飾的頁面不會出現亂碼,用的weblogic10,sitemesh2.4.1.  回復  更多評論
            

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


          網站導航:
           
          主站蜘蛛池模板: 深水埗区| 固安县| 怀宁县| 赤城县| 盐亭县| 瑞丽市| 拉萨市| 罗平县| 唐河县| 富锦市| 彰化县| 英吉沙县| 荔波县| 横山县| 资兴市| 通渭县| 沅陵县| 都兰县| 盖州市| 罗平县| 怀柔区| 万年县| 阜平县| 寿宁县| 筠连县| 托里县| 保德县| 芮城县| 宁波市| 田林县| 慈利县| 灵台县| 额济纳旗| 石城县| 柳河县| 穆棱市| 方正县| 奎屯市| 石阡县| 金堂县| 珠海市|