Hi
I'm filling a rich:panelMenuGroup using JSTL
<f:subview id="nodes"> <rich:panelMenu style="width:200px" mode="ajax" iconExpandedGroup="disc" iconCollapsedGroup="disc" iconExpandedTopGroup="chevronUp" iconGroupTopPosition="right" iconCollapsedTopGroup="chevronDown"> <rich:panelMenuGroup label="NODOS" > <c:forEach items="${userLogin.nodes}" var="node"> <c:set var="idNode" value="${node.id}" scope="request"/> <rich:panelMenuItem action="#{userLogin.getSemaphoreNode}"> <f:param name="current" value="#{idNode}"/> <c:out value="${node.name}"></c:out> <c:out value="${idNode}"></c:out> </rich:panelMenuItem> </c:forEach> </rich:panelMenuGroup> </rich:panelMenu> </f:subview>
JSTL tags <c:foreach> and <c:set> executed at the JSF components tree build phase. In the components "encode" methods, all iterations are done, and only last value visible in the request scope.