当前位置: 首页 > 知识库问答 >
问题:

JSP会话中的UTF-8编码

韩禄
2023-03-14

我的web应用程序存在编码问题。在Begging会议上,我认为问题在于数据库编码,但后来我排除了Servlet的bug。如下所示:JSP页面包含一个表单,用户在其中传递一个具有波兰字符的单词,例如“Poniedziałek”,然后我对接收此参数并将其传递给变量的servlet进行除错。变量中的结果为“PoniedziaÅek”。

我的JSP文件中的编码设置为UTF-8

<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">

我还尝试使用servlet设置编码

request.setCharacterEncoding( "UTF-8" );

不适合我。什么会导致这个问题?

编辑:从浏览器读取的标头在servlet:标头名称:主机,标头值:localhost:8080
标头名称:用户代理,标头值:Mozilla/5.0(Windows NT 6.1;WOW64;rv: 18.0)Gecko/20100101 Firefox/18.0
标头名称:接受,标头值:文本/html,应用程序/xhtml xml,应用程序/xml;q=0.9,/;q=0.8
标头名称:接受-语言,标头值:pl,en-us;q=0.7,en;q=0.3
标头名称:接受-编码,标头值:gzip,缩小
标头名称:引用者,标头值:MY APP ADDRESS
标头名称:cookie,标头值:JSESSIONID=768FC60090233C4DBB9A2E55B4341D32

共有1个答案

伊富
2023-03-14

如果您使用的是Tomcat,请查看http://tomcat.apache.org/tomcat-7.0-doc/config/http.html#Common_Attributes
http://struts.apache.org/release/2.0.x/docs/how-to-support-utf-8-uriencoding-with-tomcat.htmlHttpServletRequest-setCharacterEncoding似乎什么都做不了,我如何处理servlet中UTF-8编码的字符串

 类似资料:
  • 我尝试做一个java web应用程序。在本地Tomcat7服务器上一切都很好。我有一个jsp文件;

  • 该项目使用JSP、Servlets、Jquery、Tomcat6。 JSPs中的Charset设置为UTF-8,所有Tomcat连接器都使用uriencoding=UTF-8,我还使用了一个字符编码过滤器,如下所述。另外,我在meta标记中设置了contentType,我的浏览器会正确地检测到它。 在使用Jquery的Ajax调用中,我使用encodeURIComponent()作为URL参数,然

  • 有人能提出一些解决办法吗?

  • 请查看Servlet类中的注释。如果将更改为,则无法访问应用程序。 为什么会出现这个问题?

  • 问题内容: 我想从请求中获取参数(带有重音符的字符),但是它不起作用。我尝试使用,但也没有用。 我知道返回正确的字符,但不起作用! 有人有主意吗? 问题答案: Paul的建议似乎是最好的做法,但如果要解决此问题,则根本不需要URLEncoder或URLDecoder: 更新: 由于获得了很多选票,我想强调BalusC的观点,即这绝对不是解决方案。充其量是一种解决方法。人们不应该这样做。 我不知道是

  • 问题内容: 我正在用python做一些脚本。我创建一个保存在文件中的字符串。这个字符串有很多数据,来自目录的树状结构和文件名。根据convmv的介绍,我所有的树状结构都是UTF-8。 我想将所有内容都保留在UTF-8中,因为之后我将其保存在MySQL中。现在,在UTF-8的MySQL中,我遇到了一些字符问题(例如é或è-我是法语)。 我希望python始终将字符串用作UTF-8。我在互联网上阅读了