37.10. <ui:param>

表 37.10. 构件信息

属性是否必须描述示例
name传递到被包含的Facelet中的变量名。user
value赋值到指定变量名的固定值或EL表达式。#{sessionScope.user}

基于前面关于Facelets模板功能的说明,你应该已经熟悉如何在页面之间传递内容片段。除了传递内容片段外,使用param标签,你还可以通过变量的形式传递对象。你还可以在任何使用define标签的地方(composition或decorate标签中)使用param标签,用于传递一些额外的对象。

请注意src属性允许使用相对路径名,但它们将总是相对于最原始请求的Facelet。(即A include B, B中又使用相对路径include其他页面,此相对路径应是相对于A的路径)

<span id="leftNav">
  <ui:include src="/WEB-INF/siteNav.xhtml">
    <ui:param name="user" value="#{currentUser}"/>
    <ui:param name="page" value="home"/>
  </ui:include>
</span>

在上面的例子中,siteNav.xhtml可以使用变量user与page,其值分别是currentUser实例和“home”字符串文本。