Ich erstelle eine JSF2 Facelets Composite-Komponente. Ich möchte, dass der HTML-Code anders dargestellt wird, wenn eine bestimmte Facette definiert ist. Gibt es eine Möglichkeit zu überprüfen, ob eine <f:facet name="..." />
für eine Verbundkomponente definiert wurde?Kann ich feststellen, ob eine JSF2-Facette in einer zusammengesetzten Komponente definiert ist?
6
A
Antwort
12
Ja, Sie können UIComponent#getFacets()
verwenden, um eine Zuordnung aller Facetten nach ihrem Namen zu erhalten. Sie müssen also nur überprüfen, ob der Kartenwert nicht leer ist.
<h:panelGroup rendered="#{not empty cc.facets.foo}">
The facet with name "foo" has been definied for this composite!
</h:panelGroup>