weblogic应用乱码总结

由于操作系统、浏览器、数据库、JVM采用的字符集都不一样,基于Weblogic Server开发的应用经常出现中文显示乱码问题。

1. 在JSP文件头加入

< %@ page contentType="text/html; charset=GBK" % >

指定该JSP采用的字符集。

2.在Weblogic.xml文件的< jsp-descriptor >中加入:

< jsp-param >

< param-name >encoding< /param-name >

< param-value >GBK< /param-value >

< /jsp-param >

指定JSP文件中采用的字符集,在JSP文件中的< %@ page contentType="text/html; charset=GBK" % >会覆盖该设置

3.在Weblogic.xml文件的< jsp-descriptor >中加入

< jsp-param >

< param-name >compilerSupportsEncoding< /param-name >

< param-value >true< /param-value >

< /jsp-param >

如果为TRUE,指定在编译JSP文件时,采用在JSP文件中定义的

< %@ page contentType="text/html; charset=GBK" % >或< jsp-descriptor >中定义的encoding参数中定义的字符集进行编码,如果为FALSE,则采用JVM中默认指定的字符集进行编码。

4. web.xml和weblogic.xml中的mime的设置

在web.xml中可以指定mime映射,同时也可以指定对应类型使用的字符编码 比如:

<mime-mapping>

    <extension>html</extension>

    <mime-type>text/html; charset=UTF-8</mime-type>

</mime-mapping>

在weblogic.xml中可以设置默认的mime类型和字符编码

<container-discriptor>

    <default-mime-type>text/html; charset=UTF-8</default-mime-type>

</container-discriptor>

还有,Weblogic Server需要把HTTP request(GET 和POST)中的数据从它的原始编码转化为Unicode,以便Java servlet API进行处理

<weblogic-web-app>

<charset-params>

    <input-charset>

        <resource-path>/*</resource-path>

        <java-charset-name>UTF-8</java-charset-name>

    </input-charset>

</charset-params>
</weblogic-web-app>

5.  在项目中遇到一次,唯一有用的方法,在setDomainEnv.sh中,JAVA_OPTIONS=""内容的最后添加-Ddefault.client.encoding=GBK -Dfile.encoding=GBK -Duser.language=Zh -Duser.region=CN
    可以解决,但是日志中文会乱码,目前没有好的解决办法
6.  服务器环境 LANG(系统字符) 和NLS_LANG (和数据库有关字符)设置

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值