刚才遇到了一个小问题在源码中修改tomcat 的链接器的端口以及url的编码方式没有生效:
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
改成了这样:
<Connector port="80" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" URIEncoding="utf-8"/>
没有生效:
找了一下原因:
原来我在VM arguments里设置了 这个启动参数:-Dcatalina.home=${project_loc:/tomcat-7.0.x/java/org/apache/catalina/startup/Bootstrap.java}/output/build
也就是说我改源码没有经过ant打包,这个包里面的配置并没有改过来。
重新打过包之后:
在看tomcat的源码:
在CoyoteAdapter的service方法里
req.getParameters().setQueryStringEncoding
(connector.getURIEncoding());
这段代码获取的URIEncoding确实改成了utf-8,不设置的话是为null的,如果为null的话,默认的编码方式是iso-8859-1