我正在尝试使用速度PagerTool为我的力度模板添加分页。我按照他们网站上的说明,甚至使用了他们的示例代码。在转发到我的模板之前,我填充了寻呼机项目并设置了控制器中每页的项目数。
当我导航到该页面时,一切“看起来”都像是有效的,但是,当我点击分页编号时它不起作用。我知道我的项目已经发送到寻呼机,因为它正确地显示了页面上的项目。
分页看起来像这样: < 1 2 3 4 5 6>
当我点击1时,它会刷新页面并显示页面的一组不同值。当我点击大于1的任何东西时,它会中断。有什么想法吗?
我猜我要么没有正确使用链接(即使我按照他们说的那样完成),或者我的控制器中没有正确填充的东西。
这是我在控制器中的内容:
PagerTool pager = new PagerTool();
pager.setItemsPerPage(10);
pager.setItems(myListOfItems);
request.setAttribute("pager", pager);
request.setAttribute("new.items", myListOfItems);
我使用了他们在文档中提供的示例中的代码:[PagerTool] [1]
这是我在我的vm模板中使用的代码:
#if( $pager.hasItems() )
Showing $!pager.pageDescription<br>
#set( $i = $pager.index )
#foreach( $item in $pager.page )
${i}. $!item <br>
#set( $i = $i + 1 )
#end
<br>
#if ( $pager.pagesAvailable > 1 )
#set( $pagelink = $link.self.param("show",$!pager.itemsPerPage) )
#if( $pager.prevIndex )
<a href="$pagelink.param('index',$!pager.prevIndex)">Prev</a>
#end
#foreach( $index in $pager.slip )
#if( $index == $pager.index )
<b>$pager.pageNumber</b>
#else
<a href="$pagelink.param('index',$!index)">$!pager.getPageNumber($index)</a>
#end
#end
#if( $pager.nextIndex )
<a href="$pagelink.param('index',$!pager.nextIndex)">Next</a>
#end
#end
#else
No items in list.
#end
我已经搜遍了所有的答案,但还没有找到任何有用的东西。请帮忙!
答案 0 :(得分:0)
看起来您手动配置工具而不是让VelocityTools这样做。没关系,但是你必须调用(在java中)pager.setup(request);在每个请求上,以便它知道您所在的页面以及所有这些。
答案 1 :(得分:0)
我正在使用速度&amp;使用SSH的速度工具2.0。我使用PagerTool和LinkTool时遇到了问题。我无法生成正确的分页链接。这是我的代码:
Page<User> userList = (Page<User>) userService.getUserList(user, pageInfo);
PagerTool pager = new PagerTool();
pager.setItemsPerPage(1);
ArrayList list = new ArrayList();
list.addAll(userList.getPageElements());
pager.setItems(list);
ServletActionContext.getRequest().setAttribute("new.items", list);
ActionContext.getContext().put("pager", pager);
我不知道如何使用LinkTool。