Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Spring MVC应用程序中的UTF8转换错误_Java_Spring_Http_Jakarta Ee_Spring Mvc - Fatal编程技术网

Java Spring MVC应用程序中的UTF8转换错误

Java Spring MVC应用程序中的UTF8转换错误,java,spring,http,jakarta-ee,spring-mvc,Java,Spring,Http,Jakarta Ee,Spring Mvc,我在SpringHTTP消息转换方面遇到了一些问题。在我的应用程序中,我有登录表单。 当注册用户尝试登录时,他收到登录错误(重定向到/login?login\u error=1) 实际输入用户名为 戡戡戡戡戡戡戡戡戡戡 请求内容是 UsernamePasswordAuthenticationFilter将错误编码的用户名作为输入参数获取 例如,预期的用户名(编码为、¨§¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨ %C2%A1%C2%A2%C2%A3%C2%A4%C2

我在SpringHTTP消息转换方面遇到了一些问题。在我的应用程序中,我有登录表单。 当注册用户尝试登录时,他收到登录错误(重定向到/login?login\u error=1) 实际输入用户名为 戡戡戡戡戡戡戡戡戡戡

请求内容是

UsernamePasswordAuthenticationFilter将错误编码的用户名作为输入参数获取

例如,预期的用户名(编码为、¨§¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨ %C2%A1%C2%A2%C2%A3%C2%A4%C2%A5%C2%A6%C2%A7%C2%A8%C2%A9%C2%AA%C2%AB%C2%AC%C2%AD%C2%AE%C2%AF%C2%B0%C2%B1%C2%B2%C2%B3

但实际的输入数据是 A?A?A?A?A?A?A?A§A?A?A«A?A?A?A?A?A±A?A

您也可以在调试器屏幕截图上看到它

我认为问题可能在于“application/x-www-form-urlencoded”内容的Spring消息转换器。 我找不到是什么转换器对输入数据进行了这样的转换

我使用的是ApacheTomcat版本6.0.26

web.xml-bit.ly/ph0t7j


谢谢你抽出时间。如果您能帮我解决这个问题,我将不胜感激

解决方案


我已将web.xml中的编码过滤器移动到过滤器链的第一位。

看看这个答案,它可能会有所帮助: