浏览 8534 次
锁定老帖子 主题:JBoss+Jetty 中文问题的解决方法
该帖已经被评为精华帖
|
|
---|---|
作者 | 正文 |
发表时间:2003-10-12
<%@ page contentType="text/html;charset=gb2312" %> 取参数前需要先设置一下 request 对象的编码, request.setCharacterEncoding("gb2312"); 否则取出来的中文会是乱码,必须要手工转换,即: new String(request.getParameter("click").getBytes("iso8859-1"),"gb2312"); 这样做就麻烦了。 需要注意的是设置 request 对象的编码必须要在取所有的参数之前,否则就无效了。 Tomcat 支持 GBK 没有问题,不过 Jetty 缺省只能支持 GB2312。使用: <%@ page contentType="text/html;CHARSET=utf8" %> 是没有效果的。 有这个问题是因为在 Jetty 中将 GB2312 作为中国的缺省字符集。解决的方法是修改 Jetty 的代码,将 GB2312 改为 GBK(只有一个 Java 文件)。重新编译就可以支持 GBK 了。 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2003-10-14
这个问题你可以反馈给jetty开发者?
|
|
返回顶楼 | |
发表时间:2003-11-29
jetty4.21 版gbk的问题好象已经解决了,不过request仍然要编码
我的测试JSP index.jsp ======================================= <%@ page contentType="text/html;CHARSET=utf8" %> <html> <body> <%="你好,朱 镕 基"%> <form action ="two.jsp" method="post"> <input type="text" name="input2" value="朱 镕 基">input<br> <input type="submit"> </form> </body> </html> two.jsp ======================================== <%@ page contentType="text/html;CHARSET=utf8" %> <%request.setCharacterEncoding("GBK");; %> 表单参数是:<%=request.getParameter("input2");%> |
|
返回顶楼 | |