Tworzę komponent złożony JSF2 Facelets. Chciałbym, aby HTML renderował się inaczej, jeśli zdefiniowano konkretny aspekt. Czy istnieje sposób sprawdzenia, czy dla komponentu złożonego zdefiniowano <f:facet name="..." />
?Czy mogę określić, czy aspekt JSF2 jest zdefiniowany w komponencie złożonym?
6
A
Odpowiedz
12
Tak, można użyć funkcji UIComponent#getFacets()
, aby uzyskać odwzorowanie wszystkich aspektów za pomocą ich nazwy. Wszystko, co musisz zrobić, to sprawdzić, czy wartość mapy nie jest pusta.
<h:panelGroup rendered="#{not empty cc.facets.foo}">
The facet with name "foo" has been definied for this composite!
</h:panelGroup>