起因
今天在公司部署项目的时候,在Weblogic下部署服务的过程中遇到了Jsp页面乱码的问题,现将修复过程分享出来。[以下修复基于Weblogic_10.3.6.0、JDK为1.6环境]
问题描述
目前有一套代码,原本是跑在Tomcat上的,如今移植到Weblogic中去,JSP页面乱码、在Oracle中取出的数据都也出现了乱码。
修复过程
先检查以下文件
1. 检查系统i18n文件
- 检查Weblogic所处系统下的i18n文件是否正确
1
2
|
LANG=
"en_US.UTF-8"
SYSFONT=
"latarcyrheb-sun16"
|
2. 检查并修改项目下的pom.xml
文件中如下,设置UTF-8编码[若不是Maven项目,请跳过],当前Maven项目Version:3.3.9
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
<properties>
<project.build.sourceEncoding>UTF-8
</project.build.sourceEncoding>
...
</properties>
<plugin>
<groupId>org.apache.maven.plugins
</groupId>
<artifactId>maven-compiler-plugin
</artifactId>
<version>2.5.1
</version>
<source>${jdk.version}
</source>
<target>${jdk.version}
</target>
<showWarnings>true
</showWarnings>
<encoding>UTF-8
</encoding>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins
</groupId>
<artifactId>maven-resources-plugin
</artifactId>
<version>2.6
</version>
<encoding>UTF-8
</encoding>
</plugin>
|
3. 检查并修改项目WEB-INF下的web.xml:
1
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
<filter>
<filter-name>encodingFilter
</filter-name>
<filter-class>org.springframework.web.filter.Ch aracterEncodingFilter
</filter-class>
<param-name>encoding
</param-name>
<param-value>UTF-8
</param-value>
<param-name>forceEncoding
</param-name>
<param-value>true
</param-value>
</filter>
<filter-mapping>
<filter-name>encodingFilter
</filter-name>
<url-pattern>/*
</url-pattern>
</filter-mapping>
<filter>
|
4. 检查并修改项目WEB-INF下的weblogic.xml:
1
2
3
4
5
6
7
8
9
10
11
12
|
<jsp-descriptor>
<param-name>encoding
</param-name>
<param-value>GBK
</param-value>
</jsp-descriptor>
<input-charset>
<resource-path>/
</resource-path>
<java-charset-name>UTF-8
</java-charset-name>
</input-charset>
|
5. 检查并查看Weblogic的启动文件startWeblogic.sh,找到
1
2
|
JAVA_OPTIONS=
"${JAVA_OPTIONS}"
export JAVA_OPTIONS
|
这一段,改成以下:
1
2
|
JAVA_OPTIONS=
"${JAVA_OPTIONS} -Dfile.encoding=utf8"
export JAVA_OPTIONS
|
然后保存、重启服务:
1
|
nohup ./startWeblogic & tail -f nohup.out
|
总结
在此修复过程中,从项目源码、项目打包、Weblogic环境整个过程都检查了遍,对于项目部署乱码这块认识更加深刻,途中也找了查阅了相关资料,最终得以解决,在此将相关解决过程整合以便今后查阅。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。