項目部署到weblogic后頁面亂碼問題


問題描述:

windows環境下,將項目部署到weblogic運行startWebLogic.cmd啟動weblogic后,瀏覽器訪問頁面亂碼問題,在Tomcat不會亂碼。

請不要看着博文就直接改了,先看完你的問題是屬於哪種情況再改,避免走彎路!要對症下葯。我就走了很多彎路

下面總結了1.2.3.4種解決方案,遇見最多的是前兩中修改方案,請看:

 

1、頁面亂碼的修改方案:

a.先查看D:\oracle\middleware\user_projects\domains\base_domain\servers\AdminServer\logs\AdminServer.log(自己的域下servers文件夾下的\AdminServer\logs\AdminServer.log文件),搜索encoding=GBK,說明你的文件編碼是GBK

b.D:\oracle\middleware\user_projects\domains\base_domain\bin下的setDomainEnv.cmd文件 
c.打開,找到最后一個set JAVA_OPTIONS=%JAVA_OPTIONS%

修改為set JAVA_OPTIONS=%JAVA_OPTIONS%   -Dfile.encoding=utf-8 

即在startDomainEnv.cmd文件中:JAVA_OPTIONS=${JAVA_OPTIONS} -Dfile.encoding=UTF-8(紅色是新加的)

在JAVA_OPTIONS后面加-Dfile.encoding=UTF-8,注意前面有空格

但是我這樣做了還是不行,而且我這樣做了之后,weblogic控制台亂碼了

 

2、控制台亂碼解決:

於是打開下面這個文件,在文件開頭加chcp 65001,這個是改變cmd的編碼格式為utf-8

D:\oracle\middleware\user_projects\domains\base_domain\bin\startWebLogic.cmd

這樣是解決了控制台亂碼,但是還是沒用解決我最初的問題頁面亂碼。

 

3、web.xml:

<context-param>
<param-name>weblogic.httpd.inputCharset./*</param-name>
<param-value>UTF-8</param-value>
</context-param>


在web.xml中增加對 weblogic編碼的配置,這個意思是解決JSP頁面之間傳遞中文亂碼的情況

然而還是沒解決我的壓面亂碼問題

還有在startWebLogic.cmd文件中加-Dfile.encoding=UTF-8的,試了還是沒解決我的壓面亂碼問題

后來,就分析問題,打開頁面,只有頭和尾的中文亂碼,網頁的內容部分正常,就在想為什么會這樣,我的頁面是jsp格式的,也在頁面開頭聲明了編碼格式,也還亂碼。

 

4、修改頁面導入文件:

后來終於想明白了我在幾乎所有頁面都使用了<c:import url="...">來引入公共的部分,於是發現這才是問題的根源,在這個c標簽中增加charEncoding="UTF-8",即<c:import url="..." charEncoding="UTF-8">

重新部署,終於解決了!

 

總結:

1.2.3種方法我都試了,后來於是把1.2的其他文件都還原了,3沒有還原(這個我想加上也沒事,沒有試刪除后的情況,感興趣的可以查一下)再部署也沒有亂碼,可見這個亂碼和其他人不是同樣的情況!真是不容易啊!

希望對你有幫助,有說的不對的地方歡迎指正哦
---------------------
作者:ibigboy
來源:CSDN
原文:https://blog.csdn.net/ibigboy/article/details/83501546
版權聲明:本文為博主原創文章,轉載請附上博文鏈接!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM