惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

J
Java Code Geeks
月光博客
月光博客
D
DataBreaches.Net
云风的 BLOG
云风的 BLOG
F
Fortinet All Blogs
T
The Blog of Author Tim Ferriss
Stack Overflow Blog
Stack Overflow Blog
Blog — PlanetScale
Blog — PlanetScale
aimingoo的专栏
aimingoo的专栏
U
Unit 42
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
MyScale Blog
MyScale Blog
T
Tailwind CSS Blog
N
Netflix TechBlog - Medium
B
Blog
博客园_首页
G
Google Developers Blog
Recent Announcements
Recent Announcements
博客园 - 【当耐特】
P
Proofpoint News Feed
博客园 - 司徒正美
Hugging Face - Blog
Hugging Face - Blog
MongoDB | Blog
MongoDB | Blog
Last Week in AI
Last Week in AI

博客园 - 疯蜂

Weblogic 页面404错误 WebLogic & MyEclipse 配置 (转)为什么我的网速越来越慢?如何限制迅雷偷偷上传文件? New year ,new scratch line,for the future ×××之品味寂寞 河北省××××××××××网总结 Java开发者需坚守的十大基本准则 Web 软件测试计划 我们的《测试报告》 国内主要的一些测试的网站汇总 测试? 究竟什么才是真正的软件测试? 软件测试常用术语表 测试要点总结(转帖) 软件测试基本方法 I'm Back! 求助:C# WinForm C#导出Excel汇总 2007年暑期总结(李明锋)
Weblogic Server中如何解决中文显示乱码问题 - 疯蜂 - 博客园
疯蜂 · 2008-04-11 · via 博客园 - 疯蜂

由于操作系统、浏览器、数据库、JVM采用的字符集都不一样,基于Weblogic Server开发的应用经常出现中文显示乱码问题,其实在Weblogic Server上运行的WEB应用有很多与字符集有关的设置,下面做一个总结,为了正确处理中文,最好把这些设置都设上。
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. Weblogic Server需要把HTTP request(GET 和POST)中的数据从它的原始编码转化为Unicode,以便Java Servlet API进行处理,为了做这种转换,Weblogic Server需要知道HPPT request中的数据的编码方式。这可以通过在Weblogic.xml的<context-param>中设置.
<input-charset>
<resource-path>/</resource-path>
<java-charset-name>GBK</java-charset-name>
</input-charset>

5.从Oracle数据库中检索出来的中文显示不正确时,在这种情况下,如果数据库使用的是中文字符集,并使用的是Type 2 JDBC Driver时,可加入Weblogic.codeset=GBK的属性来解决这个问题。代码如下:
java.util.Properties props = new java.util.Properties();
props.put("Weblogic.codeset", "GBK");
props.put("user", "scott");
props.put("password", "tiger");
String connectUrl = "jdbc:Weblogic:oracle";
Driver myDriver = (Driver)
Class.forName("Weblogic.jdbc.oci.Driver").newInstance();
Connection conn =
myDriver.connect(connectUrl, props);

6. 如果是采用WTC调用Tuxedo中的服务,在JSP页面中无法正确显示中文,必须使安装Tuxedo的服务器上的NLS_LANG环境变量与数据库中的字符集的设置一样。如后台Oracle数据库中的字符集设置为SIMPLIFIED CHINESE_CHINA.ZHS16GBK,那么Tuxedo应用服务器上的NLS_LANG环境变量应设置为:export NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS16GBK"