使用pager-taglib传递参数时,出现中文乱码问题

 本文转载自http://shpshao.blog.51cto.com/1931202/474088

 

问题】:使用<pg:param name="key" />标签传递中文参数时,会有乱码。

原因】:因为它默认是用gb2312来对添加的参数进行编码,如果你的过滤器、jsp页面都是采用的gb2312就没有什么问题,如果你采用的是utf-8来编码,那么中文参数传递过程中就会出现乱码导致无法解析。

 

 【解决方法】重新修改编译源代码

 【总体思路】在com\jsptags\navigation\pager下面的PagerTag的addParam(String name, String value)中,它原本是采用的URLEncoding.encode(value)方式来对传递的参数进行编码的,修改成为 URLEncoding.encode(value, "UTF-8")后,替换掉原来jar包的这个class文件再重新打包并引入到项目中就可以了。

 

 【具体步骤】

1.首先将pager-src.jar中的文件解压出来.

 

2.在eclipse中创建一个空的javaProject项目,命名pager-taglib

将上面的两个文件复制进去

 

3.由于上面的类中用到了javax.servlet.*中的一些类

所以要导入javaee.jar包

如果在myeclipse中,则直接导入javaee5的jar包

 

4.然后修改

在com\jsptags\navigation\pager下面的PagerTag的addParam(String name, String value)中,它原本是采用的URLEncoding.encode(value)方式来对传递的参数进行编码的,修改成为 URLEncoding.encode(value, "UTF-8")后

 

5.导出jar包

export--->java---->java jar file导成jar包

 

6.重新导入到web项目中即可

使用pager-taglib传递参数时,出现中文乱码问题

你可能感兴趣的:(中文乱码,taglib,参数传递,PAGER)