拾贝壳

走过的路
随笔 - 39, 文章 - 1, 评论 - 14, 引用 - 0
数据加载中……

opencms分页

opencms列表显示
 先准备要显示的数据。比如在站点下建立一个sports目录,里面以news的格式放入一些xmlpage.
  注意给这些xmlpage准备好detail显示页面。
<%@ taglib prefix="cms" uri="http://www.opencms.org/taglib/cms" %>
<%@ page import="java.util.*"%>
<%@ page import="org.opencms.jsp.*"%>

<%
String sPageIndex=request.getParameter("pageIndex");
int iPageIndex=1;
if(sPageIndex!=null){
iPageIndex=Integer.parseInt(sPageIndex);
}

 pageContext.setAttribute("pageIndex", iPageIndex+"");
%>
<cms:contentload collector="allInFolderDateReleasedDesc" param="/myfirstsite/sports/%(number)_news.html|news" pageIndex="%(pageContext.pageIndex)" pageSize="2">
<cms:contentinfo var="contentInfo" scope="request" />
<a href="<cms:link><cms:contentshow element="%(opencms.filename)"/></cms:link>" target=_blank><cms:contentshow element="Title"/> </a>
<%out.println("---");%>
</cms:contentload>
<%
CmsContentInfoBean info  = (CmsContentInfoBean)request.getAttribute("contentInfo");
int totalNum=info.getResultSize();
%>
共<%=totalNum%>条数据,当前第<%=info.getPageIndex()%>/<%=info.getPageCount()%>
<a href="list_taglib?pageIndex=<%=info.getPageNavStartIndex()%>">第一页</a>
<a href="list_taglib?pageIndex=<%=(info.getPageNavStartIndex()-1)>0?(info.getPageNavStartIndex()-1):1%>">上一页</a>
<a href="list_taglib?pageIndex=<%=(info.getPageNavStartIndex()+1)>info.getPageCount()?info.getPageCount():(info.getPageNavStartIndex()+1)%>">下一页</a>
<a href="list_taglib?pageIndex=<%=info.getPageNavEndIndex()%>">最后页</a>
上面的例子力求尽可能少的使用标签。主要使用了CmsContentInfoBean ,CmsJspXmlContentBean ,I_CmsXmlContentContainer(CmsJspTagContentLoad )等多个对象。分页的关键在CmsContentInfoBean 和 CmsJspTagContentLoad的关系上。 

参考资料:

http://www.javaedu.com/bbs/viewthread?thread=128

http://wangyi878750.blog.sohu.com/41725191.html

http://l--w.blog.sohu.com/47996664.html

http://wangyi878750.blog.sohu.com/41378072.html

 

posted on 2008-02-17 10:31 binge 阅读(1628) 评论(0)  编辑  收藏 所属分类: OPEN SOURCE


只有注册用户登录后才能发表评论。


网站导航: