OpenCms JSP基础文档——在JSP中访问OpenCms特性

为什么在JSP中使用OpenCms特性?
  OpenCms提供了很多特性帮助你加速开发进度,如模板、用户管理和权限设置和缓存管理,同样你也可以根据OpenCms的文件结构创建动态的导航,OpenCms虚拟文件系统(VFS)中所有的文件都保存在数据库中,为了访问任何的OpenCms VFS信息你都必须使用OpenCms提供的JSP API。
两种基本方式
  在JSP文件中有两种方式来访问OpenCms系统:
  1、使用OpenCms标签库,通常以“<cms:>”开始
  2、在你的脚本中使用“OpenCms org.opencms.jsp.CmsJspActionElement
  通学的功能使用这两种方法都可以完成,这通常就是个人经验和喜好的问题了,JSP标签对于JAVA新手来说更易用些,甚至不懂JAVA但HTML经验很丰富,就可以像用HTML标签一样来使用这些标签,另一方面,JAVA丰富的老手可能更热衷于使用脚本代码(使用JavaBeans来处理业务逻辑)来获得更灵活的控制和更高的性能。
  如果你正在使用OpenCms标签,你应该考虑与通常的JSP标签结合使用来完成某些功能,如loop,if-then,enumerations等。建议使用JSP2.0标准中的JSTL(Java标准标签库),在Alkacon文档(OpenCms安装成功后的系统帮助文档)中有一些JSTL的例子。
   如果你想要实现更高级的功能,如导航或表单,你就必须使用API来写脚本了。

OpenCms <cms:>标签
  如果要使用OpenCms标签库,在你的JSP中必须按如下声明:

<% @ taglib prefix="cms" uri="http://www.opencms.org/taglib/cms"  %>  

< h1 > Simple taglib example </ h1 >  

The installed OpenCms version is 
< cms:info  property ="opencms.version" /> . < p >  

The "title" property of this file is "
< cms:property  name = "title" /> ". < p >  

Link to a file in the OpenCms VFS 
< href ="<cms:link>/alkacon-documentation/index.html</cms:link>" > like this </ a > . < p >

  执行结果如下:

  OpenCms 脚本 API

  在你的脚本中访问OpenCms API,首先要创建一个 JavaBean org.opencms.jsp.CmsJspActionElement的实例,如下: 

<% @ page  import = " java.util.*,org.opencms.jsp.* "   %><%     

//  Create a JSP action element
CmsJspActionElement cms  =   new  CmsJspActionElement(pageContext, request, response);

//  Get a simple navigation of all pages / subfolders in the current folder 
List list  =  cms.getNavigation().getNavigationForFolder();
Iterator i 
=  list.iterator();

out.println(
" <h3>A simple sample navigation</h3><ul> " );
while  (i.hasNext())  {
    CmsJspNavElement ne 
= (CmsJspNavElement)i.next();
    out.println(
"<li><a href="" + cms.link(ne.getResourceName()) + "">");
    out.println(ne.getTitle() 
+ "</a>");
}
    
out.println(
" </ul> " );
%>


  运行结果如下:

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值