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.  回復  更多評論
            

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


          網站導航:
           
          主站蜘蛛池模板: 哈尔滨市| 冷水江市| 蓬安县| 石家庄市| 凤山县| 城市| 长阳| 庆元县| 沂水县| 白城市| 五台县| 水富县| 民丰县| 临洮县| 凤凰县| 大城县| 镇安县| 贺兰县| 保山市| 通榆县| 广河县| 东阿县| 玛曲县| 曲沃县| 白玉县| 张家川| 克什克腾旗| 安岳县| 天峻县| 鄂托克前旗| 临邑县| 兴业县| 渭源县| 逊克县| 通州市| 临清市| 上虞市| 河曲县| 剑川县| 沐川县| 金华市|