在 JSF中JSP扮演的角色
2008-02-23 09:14:52来源:互联网 阅读 ()
<h:inputText>
, <h:outputText>
, <h:form>
, <f:view>
, 等等—都是定制标记。 JSF 实现提供访问标准组件,绘制器,验证器和转换器的JSP定制标记,在下表中列出了这些标记库(JSF的JAR文件中包含了这些库)URI 名称 前缀 描述 http://java.sun.com/jsf/core Core f Contains tags that are independent of a particular render kit (like
<f:view>
, <validator>
, and so on)
http://java.sun.com/jsf/html
HTML
h
Contains tags for all of the standard components and the HTML render kit
所有这些标记库中的标记必须命名和以一种特殊的方式实现。 这种方式,能确保基于JSP的应用程序访问不同的JSF实现。大多数 IDEs 支持JSP,在极大程度上, JSF和JSP一起使用就象是使用JSF定制标记库。 然而,有一些你应该明白的细微差别, 例如象使用JSP includes。
Using JSP includes
JSP的关键特性之一是它能将多个JSP页面的内容包含到一个单一的JSP页面。 常使用这个特性执行一些有趣的任务如包含一个标题或页脚。 JSP 支持两种类型的 includes: 动态的和静态的。动态的包含 (用<jsp:include>
标记或 JSTL <c:import>
标记执行) 在运行时访问资源。在这种情形下, 控制转到被包含的JSP页,来自被包含页面的响应与包含页面的响应结合在一起。 当改变动态包含页的内容时,能自动显示新的变化,静态的包含在编译成java代码时已与包含页面的内容结合。本质上,这些被包含页面的内容被拷贝到了包含页。改变被包含页的内容一般不会自动显示新的变化,因为他们已经有了他们先前内容的拷贝。 只有重新编译新的内容才有正确的显示。 (JSP 2.0的 implicit includes, 能通过Web.xml配置
, 它的处理方式象静态包含) JSF使用两种类型的JSP includes. 对于动态的includes, 有两个必要条件:
- 被包含的页面必须用JSF核心标记
<f:subview>
封闭。<f:subview>
标记可以用在被包含页面的内部。也可以用于封闭 include 语句。如下所示(这里是站长加的代码)
<f:view>
...
<f:subview id="header">
<c:import url="header.jsp" />
</f:subview>
...
</f:view>
- 在被包含的JSP页面内的所有模板文本和非JSF 标记应该用 JSF核心标记
<f:verbatim>封闭;
所以,如果在一个JSP页面内我们有下列代码:
<f:view>
...
<jsp:include page="foo.jsp"/>
...
</f:view>
foo.jsp
应该象下面这样:
<f:subview>
<h:outputText value="heyah!"/>
...
<f:verbatim>
<b>Template text.</b>
<customtag:dothis/>
</f:verbatim>
</f:subview>
象你看到那样,整个被包含的页面封闭在一个
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com<f:subview>
标记内,所有的非JSF标记和模板文本被标记<f:verbatim>
封闭。 作为选择,我们可以把<f:subview>
标记放入初始页封闭
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
下一篇:Tomcat简介
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash