首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JSP / Tomcat5中的编码问题

JSP / Tomcat5中的编码问题
EN

Stack Overflow用户
提问于 2009-09-09 08:41:08
回答 3查看 3.5K关注 0票数 3

我有一个在Tomcat5上运行的web应用程序。在jsp页面中,比如page1.jsp,有一些复选框,其中title和value包含一些法语字符(Français)。当我选中一些复选框并提交页面时,页面转到page2.jsp,在这里我显示了所选的标题。问题是,在这个页面上,特殊字符正在发生变化(Français)。当表单的方法是"POST“时,就会发生这种情况。在"GET“的情况下,它工作得很好。在Tomcat的server.xml中,uriEncoding被定义为"UTF-8“。我已经看了这么多帖子,但问题仍然存在。

EN

回答 3

Stack Overflow用户

发布于 2009-09-09 08:45:00

我做了个测试。您需要将accept-charset添加到表单标记中:

代码语言:javascript
复制
<form ... accept-charset="UTF-8" ...>

..。并在读取任何参数之前告诉容器使用哪种编码,因为浏览器不会发送它在header中使用的编码:

代码语言:javascript
复制
request.setCharacterEncoding("UTF-8");

最后,确保在响应头和head的meta标记中都设置了输出页面的编码。

票数 1
EN

Stack Overflow用户

发布于 2009-09-09 19:05:24

看起来使用了混合编码。请进行以下更改,

  1. 确保你在server.xml中的<Connector>有URIEncoding="UTF-8“。只需进行此更改并尝试您的GET。如果它中断了就好了:)servlet将以下内容添加到您所有的JSP中:<%@page pageEncoding="UTF-8" contentType="text/html;charset=utf-8" %>
  2. Add,
  3. ,to all
  4. 。如果您有其他筛选器,则可能必须在筛选器中执行此操作,因为这只会在处理参数之前生效。
票数 1
EN

Stack Overflow用户

发布于 2010-08-05 14:32:14

你可能想看看这里的答案:UTF-8 and Servlets on Tomcat/Linux

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1398372

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档