解决URL参数中的%问题(org.apache.tomcat.util.http.Parameters processParameters Paramete)
2018-01-19 15:40
507 查看
测试最近的代码发现,有一个servlet处理通过post方式传递过来的参数的时候偶尔出现乱码,并提示错误“org.apache.tomcat.util.http.Parameters processParameters Parameters: Character decoding failed”,开始以为是编码问题,google了一大堆关于编码的问题,各种测试还是无法解决这个问题。于是把出错的参数调了出来用类似二分法的方式慢慢筛查参数,最后锁定在参数中的%上,因为要传递的参数不是经常出现%,所以就出现偶尔出错的现象。解决方法就是把参数中的“%”替换为“%25”,修改代码为
parameter = parameter.replace("%","%25")
,问题解决。
下面附录是URL中的特殊字符:
URL中一些字符的特殊含义,基本编码规则如下: 1、空格换成加号(+) 2、正斜杠(/)分隔目录和子目录 3、问号(?)分隔URL和查询 4、百分号(%)制定特殊字符 5、#号指定书签 6、&号分隔参数 如果需要在URL中用到,需要将这些特殊字符换成相应的十六进制的值 + %20 / %2F ? %3F % %25 # %23 & %26
相关文章推荐
- org.apache.tomcat.util.http.Parameters processParameters 信息: Invalid chunk starting at byte [81] and
- anglarjs上传图片一org.apache.tomcat.util.http.Parameters processParameters
- org.apache.tomcat.util.http.Parameters processParameters 警告: Parameters: Invalid chunk ignored.
- org.apache.tomcat.util.http.Parameters processParameters
- tomcat异常:org.apache.tomcat.util.http.Parameters processParameters
- org.apache.tomcat.util.http.Parameters processParameters
- org.apache.tomcat.util.bcel.classfile.ClassFormatException: Invalid byte tag in constant pool问题解决方案
- 解决get方法传递URL参数中文乱码和解决tomcat下中文乱码问题
- JAVA项目直接触之新手遇到的问题:org.apache.tomcat.util.digester.Digester fatalError
- NO.88 POI升级至3.5以上后找不到org.apache.poi.hssf.util.HSSFDataValidation的问题之解决
- 问题解决:SQLException: org.apache.tomcat.dbcp.dbcp.DelegatingStatement with address: "com.mysql.jdbc.Statement@100363" is closed.
- Tomcat的参数配置及一般问题的解决---http://www.blogjava.net/Steven-bot/archive/2011/10/08/360161.html
- 关于Cannot construct org.apache.maven.plugin.war.util.WebappStructure maven打包问题解决
- Apache2.2和Tomcat5.0的整合(二)—解决REDIRECT_URL的中文路径问题
- android客户端通过Get方式提交参数给服务器,使用URL和HttpURLConnection实现,以及乱码问题解决
- org.apache.tools.zip包解决java.util.zip包中文问题
- tomcat 连接池泄露的问题:org.apache.commons.dbcp.SQLNestedException: Cannot get a connection, pool exhausted, cause:java.util.NoSuchEleme
- [tomcat] java.lang.ClassCastException: org.apache.catalina.util.DefaultAnnotationProcessor 解决
- Android Studio解决org.apache.http.legacy找不到的问题
- Tomcat7出现HTTP Status 500 - java.lang.ClassCastException: org.apache.jasper.el.ELContextImpl cannot be cast to org.apache.jasper.el.ELContextImpl的解决