新来的同事在搞开放平台,一个乱码问题整了很久,主要是对JBoss的配置不是很熟悉,我以前遇到过这种情况,就帮着解决了下。 第三方应用调用开放平台的接口,GET请求,参数直接在URL上,其中参数存在中文,默认的设置会乱码。
JBoss的配置和tomcat类似。
<Connector port="8080" address="${jboss.bind.address}"
maxThreads="1000" maxHttpHeaderSize="8192"
emptySessionPath="true" protocol="HTTP/1.1"
enableLookups="false" redirectPort="8443" acceptCount="500"
connectionTimeout="20000" disableUploadTimeout="true" />
在尾部添加
URIEncoding="UTF-8"
变成了:
<Connector port="8080" address="${jboss.bind.address}"
maxThreads="1000" maxHttpHeaderSize="8192"
emptySessionPath="true" protocol="HTTP/1.1"
enableLookups="false" redirectPort="8443" acceptCount="500"
connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="UTF-8" />
中文乱码问题解决。
JBoss部署多应用的时候,需要在server里找到对应的应用配置目录 例如:
/app/jboss/server/xxxxx/deploy/jboss-web.deployer/server.xml
在这个目录里找到server.xml。
当然也有可能会配置在,default目录是JBoss对应用的默认配置存放的目录。
/app/jboss/server/default/deploy/jboss-web.deployer/server.xml
具体得看怎么配置的,一般情况是上面这种。