我有一个简单的表单提交请求。在请求接收到Servlet之前,它正在通过过滤器。在该过滤器中,我将字符集编码设置为“ iso-8859-15”,因为此字符集编码导致请求参数值未正确编码。
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse,
FilterChain chain) throws IOException {
servletRequest.setCharacterEncoding("iso-8859-15");
例如,我的参数值为“ 1Depósito”,并且编码错误地编码为“ 1Depósito”,而不是“ 1Depósito”。因为我的请求参数值中有一些国际语言特殊字符(即“ó”)。
根据我的Google研究,输入请求编码为UTF-8,但在过滤器中,我们设置了不同的编码,即iso-8859-15,因此可能编码不正确。但是,只有在WebLogic 10中运行时,才能看到此问题。当它在Spring-boot嵌入式Tomcat中运行时,相同的代码运行良好]
NOTE:
在WebLogic和Tomcat中,输入请求的内容类型如下所示:
然后为什么setCharacterEncoding仅在WebLogic中而不在Tomcat中失败?
我们对Spring-boot嵌入式Tomcat服务器有任何默认编码设置吗?
如何在我的WebLogic部署中解决此问题?
期待您的宝贵意见。
谢谢,BSK
我有一个简单的表单提交请求。在请求接收到Servlet之前,它正在通过过滤器。在该过滤器中,由于此字符集,我将字符集编码设置为“ iso-8859-15” ...
迟到总比不到好。
但是这个问题我们只能在WebLogic 10中运行时才能看到。相同的代码在spring-boot嵌入式Tomcat中运行时可以正常运行