java display分页

用display通过中文查询分页时,下一页不能显示,调试时发现传过去的中文查询条件是乱码,怎么解决!!急!!
修改Tomcat下的server.xml文件,在Connector标签里面添加一项 URIEncoding="UTF-8"还是乱码!!(页面编码是UTF-8),在后台转码new String(xingxifenlei.getBytes("iso8859-1"),"UTF-8");还是不行,怎么办??急!!!
下面几位大哥的方法都试过了,还是不行,可能是用的display这个插件的问题吧··
还是不知道怎么解决!! 都试了,还是不行!! 我用的Tomcat6.0
?? ????

 对于中文无法翻页、排序,最简单的办法是修改Tomcat下的server.xml文件。找到HTTP的Connector标签,在里面添加一项URIEncoding="...",引号里面的内容取决于你的页面编码,比如可以是GBK,UTF8等。这样上面两个问题就可以解决了。

我也遇到这样的问题,亲试有效的。 

如下图所示:

温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-08-20
不是过滤器的原因, 因为中文用get 方法进行传递的时候, 就会出现乱码, 很不容易处理, 其实你分页的时候可以用表单来做, 比如你的条件查询中有name 属性, 那么你就可以给这个条件查询框放在一个form中, 然后在给这个form增加一个page属性, 用来保存页号, 然后你大体可以这么写:
<script>
function jumpPage(page) {
var form = document.getElementById('pageForm');
form.page = page;
form.submit();
}
</script>
...
<form id="pageForm" action="...">
<input type="hidden" name="page" />
<input type="text" name="name" />
<input type="submit" value="查询"/>
</form>
...
<!-- 这里是程序批量生成的 -->
<a href="javascript: jumpPage(1)">1</a>
2
<a href="javascript: jumpPage(3)">3</a>
<a href="javascript: jumpPage(4)">4</a>
...

这样, 你在点击页面的跳转, 或者进行条件查询的时候, 就不会出现乱码了, 而且还可以带着条件进行跳页.
同样删除功能也能带着条件和页号进行删除, 删除之后还能停留在本页:
...<a href="removeUser('user1')" >删除</a>...
<script>
function removeUser(id) {
var form = document.getElementById('pageForm');
form.action = 'removeUser.do?id=' + id;
form.submit();
}
</script>
这样在删除方法中也可以接收到查询条件和页号, 在查询所有的时候就可以带着这些条件进行查询了, 而且不会出现乱码的情况.
第2个回答  2009-08-24
一般来说,遇到中文内容在多次request当中进行传送的时候,都是将其封装咋form当中。
楼主可以试着将换页的链接做成form。现在没时间具体实验。。。。。但我记得以前的项目是这样做的。
当然,理论上来说如果在web.xml中的字符集和jsp页面中的字符集一致的话是不应该出现上述问题的。哎。。。。
第3个回答  2009-08-20
楼主人家已经在server.xml里配置了 utf8了,所以使用get是没问题的!

你要在URIEncoding="UTF-8"后面加上一句useBodyEncodingForURI="true"
启用编码设置就好了···
第4个回答  2009-08-20
struts里有个过滤器,你可以把统一的字符标准设置在过滤器中,过滤所有的action 就可以了。