About Opencms

什么是OpenCms模版
[ 作者:  加入时间:2005-10-29 13:23:20  来自: ]
 OpenCms模版是简单JSP页面,它可以访问OpenCms方法的标签库,能结合其它标签库使用(如JSTL),所有标签库方法都可通过脚本API访问。<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
  模版在OpenCms VFS中是简单资源,这意味着它可进行版本控制,可工作流处理(在线/离线),能在模块中发布。模版可有众多子元素,如:导航元素,广告条素,文章列表元素。模版通常用于格式化/显示一个XML页面内容另外,内容也用在多个地方同一个模版也可用于格式化其它JSP页面的输出.
  使用模版机制,可以按你设计的风格样式、版式布局来表现所需要管理的内容。JSP模版定义页面具体的元素,实现模版的框架,如:页头、页脚、页面内容区。 页面内容 内容编辑员选定相应的模版,添加内容,发布时系统套用指定的模版。
OpenCms 如何管理 JSP 网页
 
       所有的 OpenCms 文件都存放在数据库中,即 OpenCms VFS  中,也就是说,我们不能在本地文件系统中看到像 OpenCms 工作区资源管理视图那样的文件结构。但是为了 JSP 的运行,所有的 OpenCms 都镜像到本地文件系统。
         要了解这一处理,先看看标准的 JSP 是如何处理的:
1.          一个 JSP 文件放到 web 应用的主目录中;
2.          该文件的后缀必须是 *.jsp
3.          servlet 容器接收到 web 应用的任一 JSP 请求时,被请求的 JSP 先被翻译成 java 类源代码,即以 *.java 为扩展名的文件;
4.          在翻译过程中, JSP 指令 ( <%@ include file= %>) 都被 Java 代码取代;
5.          创建的 *.java 源代码被编译成实现 servlet 接口的 class
6.          最后调用该 servlet
 
 
OpenCms 标签
 
JSP 中使用 OpenCms 标签,必须在 JSP 的前面加入下面的行
<%@ taglib prefix=
"cms" uri=
"http://www.opencms.org
/taglib/cms" %>
1 <cms:user> user 标签提供了读当前用户的属性的方法
2 <cms:property> 读取当前文件的属性
3 <cms:link> 该标签为一个 VFS 资源生成有效的 OpenCms URL
4 <cms:label> 读取 OpenCms 本地化属性文件中的字符串(仅当需扩展 OpenCms 工作区时使用)
5 <cms:include> 用于运行中从 OpenCms VFS 动态包含文件,包含的文件被当成一个请求的附加参数。
6 <cms:template> template 标签允许您把一个 JSP 页面分割成多个元素,以便使用 <cms:include> 引入。
7 <cms:contentcheck> 检查 XML 内容的项目是否存在
8 <cms:contentloop> 该标签用来循环取出 XML 内容列的全部元素
9 <cms:contentshow> 该标签用于显示 XML 内容的列的值
10 <cms:contentload> 载入一个 XML 内容资源的 collection ,根据给定的 collector 属性,确定是单个资源还是资源列表
11 <cms:info> info 标签显示系统的运行信息以及底层支撑的
Java/Servlet/OS
环境信息。这个标签是通过标准的
System.getProperty(value)
来获得 Java 虚拟机信息的。如果给出的 property 的值没有对应的键值时,会返回错误信息。
 

 

怎样使用 XML 风格的 JSP 语法
 
问题 :有经验的 JSP 开发者知道 JSP 1.2 JSP 有两种写法,达到相同的结果:“ JSP ”和“ XML ”风格。“ JSP ”方式使用 <%…%> 风格的括弧,如 <% @ include file=”…”%>; XML ”风格的语法是 <jsp:directive.include file=”…”/> 。那么用“ XML ”风格的语法会怎样?
         简单地说:它当前在 OpenCms 中不能工作,故不要使用它。坚持经典的 JSP 风格,使用 <%…%> 符号。
         详细地说:像前面提到的一个 JSP 网页写到真实文件系统前,为了调整像 <%@ include file=”…”> <%@ page errorPage=”…”%> 包含文件引用的标签,要经过 OpenCms 解析。这是必须的,因为 servlet 容器必须有真实文件的路径,而不是 OpenCms VFS 路径。解析器很简单,当前不支持 XML 风格的语法。因此当使用 <jsp:directive.include file=”…”> 时,其中的文件名不被调整,这样 servlet 容器不能找到仍然指向 OpenCms VFS 路径的文件。例如 <jsp:useBean id=”…”/> <jsp:setProperty name=”…”/> 能正常使用,没有问题。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值