如何将托管 Bean 字段设置为 ui:param 的值



我有一个包含在其他JSF页面中的JSF页面(基本上是一个页面标题,具有公共信息)。此公共页面具有自己的控制器,并且依赖于包含此公共页面的页面向其传递一些公共数据。

具体来说,我目前正在尝试使用以下方法将此公共页面包含在其他页面上:

<ui:include src="commonPage.xhtml">
   <ui:param name="commonData" value="#{thisPagesController.commonData}"/>
</ui:include>   

它应该将"commonData"传递给commonPage.xhtml页面,并在CommonPageController类上理想地设置"commonData"属性:

@ManagedProperty("#{commonData}")
CommonData commonData;

但是,这是行不通的...未设置托管属性。

正确的方法是什么?

请参阅BalusC的评论。在 JSF API 规范中没有这方面的标准。请改用复合组件或自定义组件。

最新更新