Java中的字符集返回UTF-8,但字符在Windows-1252中

Java中的字符集返回UTF-8,但字符在Windows-1252中,java,encoding,utf-8,jboss,Java,Encoding,Utf 8,Jboss,我在Jboss服务器中部署了一个Java应用程序。我对“€”符号有问题(我认为其他人也有问题) 在我当地的环境中,我没有这个问题,但在开发环境中。 我有一个jsp,使用UTF-8中的字符集和编码。我有一个具有以下属性集的Jboss: client.encoding.override="UTF8" org.apache.catalina.connector.USE_BODY_ENCODING_FOR_QUERY_STRING="true" 我的源代码中有一个过滤器,其中包含: servletRe

我在Jboss服务器中部署了一个Java应用程序。我对“€”符号有问题(我认为其他人也有问题) 在我当地的环境中,我没有这个问题,但在开发环境中。 我有一个jsp,使用UTF-8中的字符集和编码。我有一个具有以下属性集的Jboss:

client.encoding.override="UTF8"
org.apache.catalina.connector.USE_BODY_ENCODING_FOR_QUERY_STRING="true"
我的源代码中有一个过滤器,其中包含:

servletRequest.setCharacterEncoding("UTF-8"); 
servletResponse.setContentType("text/html; charset=UTF-8");
如果部署我的解决方案,此指令将返回“UTF8”

但当我发送“€”符号时,请求是: 值=0%E2%82%AC

看起来一切正常,但打印输出的字符是: 0

字符在Windows-1252中编码

按照此说明,一切正常:

 String out = new String(mvp.getBytes(Charset.forName("Windows-1252")), Charset.forName("UTF-8"));

但是我需要知道怎么会有问题。谢谢

请显示代码或解释如何从0%E2%82%AC获得mvp值。
%E2%82%AC
字符的正确UTF-8 url编码<代码>表示url被解码为字节八位字节,并作为Windows-1252而不是UTF-8进行处理。那么,
mvp
究竟从何而来?这就是您需要解决的问题,而不是事后解决,以便正确处理UTF-8,并将
mvp
作为
“€”而不是“代码”提供给您首先。请显示代码或解释如何从0%E2%82%AC获得mvp值。
%E2%82%AC
字符的正确UTF-8 url编码<代码>表示url被解码为字节八位字节,并作为Windows-1252而不是UTF-8进行处理。那么,
mvp
究竟从何而来?这就是您需要解决的问题,而不是事后解决,以便正确处理UTF-8,并将
mvp
作为
“€”
提供给您,而不是一开始就作为“代码”。
 String out = new String(mvp.getBytes(Charset.forName("Windows-1252")), Charset.forName("UTF-8"));