11-27-2008 08:53 AM
11-27-2008 11:29 AM
<%– Spaces List –%>
<a:richList id="spacesList" binding="#{BrowseBean.spacesRichList}" viewMode="#{BrowseBean.browseViewMode}" pageSize="#{BrowseBean.pageSizeSpaces}"
styleClass="recordSet" headerStyleClass="recordSetHeader" rowStyleClass="recordSetRow" altRowStyleClass="recordSetRowAlt" width="100%"
value="#{BrowseBean.nodes}" var="r">
…
<%– Primary column for details view mode –%>
<a:column id="col1" primary="true" width="200" style="padding:2px;text-align:left" rendered="#{BrowseBean.browseViewMode == 'details'}">
<f:facet name="header">
<a:sortLink id="col1-sort" label="#{msg.name}" value="name" mode="case-insensitive" styleClass="header"/>
</f:facet>
<f:facet name="small-icon">
<a:actionLink id="col1-act1" value="#{r.name}" image="/images/icons/#{r.smallIcon}.gif" actionListener="#{BrowseBean.clickSpace}" showLink="false">
<f:param name="id" value="#{r.id}" />
</a:actionLink>
</f:facet>
<a:actionLink id="col1-act2" value="#{r.name}" actionListener="#{BrowseBean.clickSpace}">
<f:param name="id" value="#{r.id}" />
</a:actionLink>
<r:nodeInfo id="col1-info" value="#{r.id}">
<h:graphicImage id="col1-img" url="/images/icons/popup.gif" styleClass="popupImage" width="16" height="16" />
</r:nodeInfo>
</a:column>
…
<%– Description column for all view modes –%>
<a:column id="col4" style="text-align:left">
<f:facet name="header">
<a:sortLink id="col4-sort" label="#{msg.description}" value="description" styleClass="header"/>
</f:facet>
<h:outputText id="col4-txt" value="#{r.description}" />
</a:column>
<%– Path column for search mode in details view mode –%>
<a:column id="col5" style="text-align:left" rendered="#{NavigationBean.searchContext != null && BrowseBean.browseViewMode == 'details'}">
<f:facet name="header">
<a:sortLink id="col5-sort" label="#{msg.path}" value="displayPath" styleClass="header"/>
</f:facet>
<r:nodePath id="col5-path" value="#{r.path}" actionListener="#{BrowseBean.clickSpacePath}" />
</a:column>
<%– Created Date column for details view mode –%>
<a:column id="col6" style="text-align:left" rendered="#{BrowseBean.browseViewMode == 'details'}">
<f:facet name="header">
<a:sortLink id="col6-sort" label="#{msg.created}" value="created" styleClass="header"/>
</f:facet>
<h:outputText id="col6-txt" value="#{r.created}">
<a:convertXMLDate type="both" pattern="#{msg.date_time_pattern}" />
</h:outputText>
</a:column>
<%– Modified Date column for details/icons view modes –%>
<a:column id="col7" style="text-align:left" rendered="#{BrowseBean.browseViewMode == 'details' || BrowseBean.browseViewMode == 'icons'}">
<f:facet name="header">
<a:sortLink id="col7-sort" label="#{msg.modified}" value="modified" styleClass="header"/>
</f:facet>
<h:outputText id="col7-txt" value="#{r.modified}">
<a:convertXMLDate type="both" pattern="#{msg.date_time_pattern}" />
</h:outputText>
</a:column>
Si nos fijamos, lo más importante en este caso es el compontente richList que contendrá la lista de nodos que se visualizará en la pantalla. Dicha lista la alimenta del atributo value, el cual hace una llamada al método getNodes del BrowseBean a través de value="#{BrowseBean.nodes}". A partir de aquí para cada nodo (resumido bajo la variable "r") va creando columnas.<a:actionLink id="col1-act2" value="#{r.name}" actionListener="#{BrowseBean.clickSpace}">
<f:param name="id" value="#{r.id}" />
</a:actionLink>
Por tanto, es importante que tu método "getNodes" devuelva también el id de nodo pues se utilizará ahora para "navegar". this.navigator.setCurrentNodeId(ref.getId());
Entonces, en tu caso necesitarás que tu bean tenga además un NavigationBean para realizar esta actualización, para indicar cuál es el nodo actual. Esto en principio hace que te muevas de una referencia a otra.Tags
Find what you came for
We want to make your experience in Hyland Connect as valuable as possible, so we put together some helpful links.