我有一个带有PrimeFaces dataTable的复合组件。列定义应在构面定义中在此组件之外完成。
<composite:interface>
<composite:attribute name="domains" required="true"/>
<composite:facet name="domainColumns" required="true"/>
</composite:interface>
<composite:implementation>
<p:dataTable var="var" value="#{cc.attrs.domains}">
<composite:renderFacet name="domainColumns"/>
</p:dataTable>
</composite:implementation>
我想使用此组件,如下所示:
<my:domainTable domains="#{adminTsWorkspaceBean.domains}">
<f:facet name="domainColumns">
<p:column headerText="Header">
<h:outputText value="#{var.id}" />
</p:column>
</f:facet>
</my:domainTable>
有趣的是:如果我使用p:column
作为孩子,而不是作为一个方面,然后在我的组件<composite:insertChildren/>
中,我有所需的输出。但是我当然只能在子组件中的一个位置插入子项。我正在尝试为两个不同的dataTable定义列?