当第一次查询返回list列表,分页1,2,3.。。。。这是选择2,当前页面停留在第2页。

当再次查询后,因为使用的ajax,结果更新了,但当前页面依旧是第2页。

可以在jsf页面,datatable的控件中用binding直接将控件绑定到后台页面。然后查询的时候,在后台页面重置datatable到第一页。

1)

xhtml中

<p:dataTable id="tbl" var="result"

binding="#{liveRangeService.resultTable}"

2)在LiveRangeService中,查询的处理模块加入

private DataTable resultTable;//省略了setter/getter

doSearch(){

liveRangeResult = rangeSearch.search();

if(liveRangeResult.size()>0){

resultTable.setFirst(0);

}