读书人

Facelets 标签参照2

发布时间: 2012-10-25 10:58:57 作者: rapoo

Facelets 标签参考2
<ui:debug/>
这标签是开发程序时很有用的工具。在 launched 的时候通过按组合健 Ctrl + Shift + < 热键 > ( 默认是 D) ,将显示一个弹出窗口,在里面显示组件树和局部变量, <ui:debug> 标签属性

属性名称 :
hotkey 热键, 默认是 D 。
rendered
boolean 值,指定是否显示 .

通常,可以在页面的末尾找到 debug 标签 , 但它可以定义在任何位置,可以定义 如下 :

<ui:debug hotkey="g"
rendered="#{initParam[‘apress.DEBUG_MODE’]}"/>
这样 , 按 Ctrl + Shift + G 就可以弹出调试窗口,在 initParam[‘apress.DEBUG_MODE’] 中指定是否显示。

<ui:param/> <ui:param/> 用来在 Facelets 之间用名字变量传递对象。

<ui:param> 标签属性

属性名称 :
name 传递给被包含文件或是模板文件的变量的名称 .
value 用简单或 EL 表达式的值给名字变量赋值。

举例:

Listing 1-17. param-details.xhtml
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0
Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-
transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets">
<body>
<ui:composition>
<div>
<h3>#{birdName}</h3>
Order: #{birdOrder}
<br/>
Family: #{birdFamily}
</div>
</ui:composition>
</body>
</html>

在下面文件中引用前面定义的模板文件

Listing 1-18. param-example.xhtml
<!DOCTYPE html PUBLIC "-//W3C//DTD ?
XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/ ?
xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets">
<body>
<ui:include src="param-details.xhtml">
<ui:param name="birdName" value="Parrot"/>
<ui:param name="birdOrder" value="Psittaciformes"/>
<ui:param name="birdFamily" value="Psittacidae"/>
</ui:include>
<ui:decorate template="param-details.xhtml">
<ui:param name="birdName" value="Eagle"/>
<ui:param name="birdOrder" value="Falconiformes"/>
<ui:param name="birdFamily" value="Accipitridae"/>
</ui:decorate>
</body>
</html>

产生如下输出:

<div>
<h3>Parrot</h3>
Order: Psittaciformes
<br />
Family: Psittacidae
</div>
<div>
<h3>Eagle</h3>
Order: Falconiformes
<br />
Family: Accipitridae
</div>



<ui:remove/>
<ui:remove> 用来在在编译时移除代码块,它没有属性,可以在 jsfc 的属性中指定。

例如:
<ui:remove>
This will be removed.
</ui:remove>
This will survive
<div jsfc="ui:remove">
This will be removed too
<h:outputText value="#{backingBean.andThisToo}"/>
</div>
And this will survive too!

产生如下输出:
This will survive
This will survive too!

<ui:repeat/>
<ui:repeat/> 用来跌代一个对象列表。推荐用 JSTL 核心标签库中的 c:forEach 代替。不作介绍。

读书人网 >软件架构设计

热点推荐