我正在使用带有 JSF 2.0 的 Facelets。在 facelets 标签库中有一个标签叫做<ui:component>
. 它将 UIComponent 的一个实例插入到树中,并修剪自身外部的标签。
谁能解释一下这种功能的用途是什么?为什么有人想向UIComponent
树中添加实例?
我搜索了很多组件标签的示例,但没有找到。
在组件树中<ui:component>
插入一个物理UIComponent
实例,所有内容都作为其子项。
<ui:composition>
不会在组件树中插入任何物理实例UIComponent
,而是将所有内容作为其父级的子级插入。您无法通过findComponent()
.
复合组件隐式使用<ui:component>
,因为它基本上引入了一个NamingContainer
组件,该组件允许在父级中多次重用相同的复合组件,而不会出现由复合的子级导致的重复组件 ID 错误的风险。