Как вывести список дочерних элементов выбранного узла, который находится на панели навигации, в боковой панели
Мне нужно добавить дополнительную навигацию в мой проект портала Oracle. Эта дополнительная навигация должна показывать только дочерние элементы выбранного узла, который находится на панели навигации, в левой боковой панели. Как я могу это сделать? Я пытаюсь изменить навигацию по списку, но не смог. Я использую pageTemplate_globe.jspx. Спасибо за помощь.
1 ответ
Решение
<af:panelGroupLayout layout="vertical">
<c:forEach var="node" varStatus="vs" items="#{navigationContext.currentModel.listModel['startNode=/, includeStartNode=false']}">
<c:if test="${node.selected}">
<c:set value="${node.children}" var="childNodes" scope="session"/>
</c:if>
</c:forEach>
<c:if test="${childNodes ne null}">
<c:set var="childNodes" value="${navigationContext.currentModel.currentSelection.parent.children}"/>
</c:if>
<c:forEach items="#{childNodes}" var="node2">
<af:commandImageLink id="cil3" text="#{node2.title}"
actionListener="#{navigationContext.processAction}"
action="pprnav"
icon="#{node2.attributes[pageFlowScope.tnBean.iconKey]}"
disabled="#{not node2.navigable}"
inlineStyle="#{node2.onSelectedPath ? 'font-weight:bold;' : ''}">
<f:attribute name="node" value="#{node2}"/>
</af:commandImageLink>
</c:forEach>
</af:panelGroupLayout>