在我的grails应用程序中,当我作为战争在Tomcat下运行时,UTF-8处理被搞砸了。当我运行app时,以下请求字符串:
utf-8-demo-%C3%BC%C4%81%D1%84.txt
设置为utf-8-demo-üāф.txt
,对于所有后续请求,为字符串中的每个unicode字符发回3个unicode转义序列。
在tomcat下,这会以utf-8-demo-üÄÑ.txt
或utf-8-demo-\u00C3\u00BC\u00C4\u0081\u00D1\u0084.txt
的形式返回。
在我的一个控制器中,我有这个:
String s = params.file
log.info( "Filename: $s" )//works in run-app, fails under tomcat
什么可能导致run-app和部署之间的这种行为二分法作为tomcat下的战争?
答案 0 :(得分:2)
在URIEncoding="UTF-8"
的{{1}}定义中添加属性<Connector>
。