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 想飛的魚 閱讀(2058) 評論(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.  回復  更多評論
            

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


          網站導航:
           
          主站蜘蛛池模板: 嘉义县| 远安县| 平塘县| 荔波县| 和平县| 贺州市| 阿尔山市| 武强县| 昭苏县| 南雄市| 濮阳县| 和静县| 南陵县| 锡林浩特市| 三门县| 隆回县| 得荣县| 库车县| 高雄县| 涿鹿县| 营口市| 巢湖市| 玉环县| 景泰县| 新疆| 昔阳县| 涟水县| 库伦旗| 镇巴县| 仁怀市| 京山县| 大厂| 招远市| 东辽县| 监利县| 吐鲁番市| 确山县| 正宁县| 晋州市| 佳木斯市| 桐梓县|