I'm iterating over a list of items in composite component. I want to expose each item of the list so that they could be used within the child component of this composite component, to create a template for how to display all items in the list.
Here is my Composite Component implementation:
customList.xhtml
<ui:component
xmlns="http://www.w3.org/1999/xhtml"
xmlns:cc="http://java.sun.com/jsf/composite"
xmlns:ui="http://java.sun.com/jsf/facelets">
<cc:interface>
</cc:interface>
<cc:implementation>
...
...
<ui:repeat value="#{listRetriever.list}" var="item">
<cc:insertChildren />
</ui:repeat>
</cc:implementation>
</ui:component>
Now I want to make use of #{item}
while defining the child component of composite component in my page (similar to h:dataTable
or ui:repeat
).
<my:customList>
#{item} <!--- over here--->
</my:customList>
ui:decorate
is not what I want since I'm trying to add more functionality like lazy load etc(omitted here for simplicity). Regardingc:forEach
how do I expose the #{item} defined within CC to be used on the page where I'm using the CC ? – Osteen