ADF : af:iterator on ViewObject
<af:panelFormLayout id="pfl1" rows="3" maxColumns="4">
<af:iterator var="catrow"
value="#{bindings.SubjectCategoryROVO1.collectionModel}"
id="ite3311">
<af:spacer width="10" height="20" id="s255"/>
<af:outputText value="#{catrow.CategoryName}" id="ot3311"
inlineStyle="color:Blue; font-size:medium;"/>
<ul>
<af:panelBorderLayout id="pbl1">
<af:iterator var="quesrow"
value="#{bindings.SubjectCategoryQuestionsROVO1.collectionModel}"
id="ite33">
<af:group rendered="#{catrow.CategoryId eq quesrow.CategoryId}"
id="g1">
<af:spacer width="10" height="10" id="s2"/>
<li>
<af:link text="" id="l1" action="question">
<af:outputText value="#{quesrow.QuestionName}" id="ot33"
inlineStyle="font-size:medium;">
<af:clientAttribute name="questionid"
value="#{quesrow.QuestionId}"/>
<af:showPopupBehavior triggerType="mouseOver"
popupId=":::p1"/>
</af:outputText>
</af:link>
</li>
</af:group>
</af:iterator>
</af:panelBorderLayout>
</ul>
</af:iterator>
</af:panelFormLayout>
<af:panelFormLayout id="pfl1" rows="3" maxColumns="4">
<af:iterator var="catrow"
value="#{bindings.SubjectCategoryROVO1.collectionModel}"
id="ite3311">
<af:spacer width="10" height="20" id="s255"/>
<af:outputText value="#{catrow.CategoryName}" id="ot3311"
inlineStyle="color:Blue; font-size:medium;"/>
<ul>
<af:panelBorderLayout id="pbl1">
<af:iterator var="quesrow"
value="#{bindings.SubjectCategoryQuestionsROVO1.collectionModel}"
id="ite33">
<af:group rendered="#{catrow.CategoryId eq quesrow.CategoryId}"
id="g1">
<af:spacer width="10" height="10" id="s2"/>
<li>
<af:link text="" id="l1" action="question">
<af:outputText value="#{quesrow.QuestionName}" id="ot33"
inlineStyle="font-size:medium;">
<af:clientAttribute name="questionid"
value="#{quesrow.QuestionId}"/>
<af:showPopupBehavior triggerType="mouseOver"
popupId=":::p1"/>
</af:outputText>
</af:link>
</li>
</af:group>
</af:iterator>
</af:panelBorderLayout>
</ul>
</af:iterator>
</af:panelFormLayout>