我的grails应用程序无法正确解码请求参数。
在config.groovy中:
grails.views.gsp.encoding = "UTF-8"
grails.converters.encoding = "UTF-8"
我所有的gsp都contentType="text/html; charset=UTF-8"在page指令以及<meta http- equiv="Content-Type" content="text/html; charset=UTF-8" />head元素中使用。
contentType="text/html; charset=UTF-8"
<meta http- equiv="Content-Type" content="text/html; charset=UTF-8" />
但是,当我从控制器中的param对象接收到发布的参数时,该应用只会打印垃圾内容…
我使用的是通过Tomcat 5部署的Grails 1.3.7版本。其他已安装的插件(tomcat除外):
hibernate1.3.7 jQuery 1.7.1 spring-security-core 1.2.6 webxml 1.4
编辑:从进一步调试,我已经注意到该应用程序将在码头正常运行。因此,我怀疑这一定是tomcat问题。我的问题类似于这篇文章(可惜我没有使用Shiro插件)。
有人能帮忙吗?
您需要添加URIEncoding='UTF-8'到Connectorconf / server.xml中的元素,例如
URIEncoding='UTF-8'
Connector
<Connector port='8080' protocol='HTTP/1.1' connectionTimeout='20000' redirectPort='8443' URIEncoding='UTF-8' />
此处描述:https : //wiki.apache.org/tomcat/FAQ/CharacterEncoding