panelMenu - selectedChild
krzysgdynia Oct 31, 2007 2:55 AMI want to use panelMenu to navigation in my application.
I created session bean to save selectedChild and linked it with panelMenu and use expanded attribute.
Almost everything works fine but:
- after refresh page I lost selected item in panelMenu
- I must use expanded attribute because use only selectedChild attribute doesn't work
How should I set attributes in panelMenu that panelMenu remember state (selected item) between pages ?
What do I wrong ?
Thanks for any help
@Name("menuRend")
@Scope(ScopeType.CONVERSATION)
public class MenuRendering {
private String activeItem;
public String getActiveItem() {
return activeItem;
}
public void setActiveItem(String activeItem) {
this.activeItem = activeItem;
}
public String addSlStopnieAwans() {
activeItem = "dodajStopienAwansu";
return "/sl_stopnie_awansu/SlStopnieAwansuEdit.xhtml";
}
public String showStopnieAwans() {
activeItem = "pokazStopnieAwansu";
return "/sl_stopnie_awansu/SlStopnieAwansuList.xhtml";
}
....
<a4j:form id="form" ajaxSubmit="true" reRender="body" limitToList="true">
<rich:panelMenu style="width:170px; " mode="ajax"
iconExpandedGroup="disc" iconCollapsedGroup="disc"
iconExpandedTopGroup="chevronUp" iconGroupTopPosition="right"
iconCollapsedTopGroup="chevronDown" iconCollapsedTopPosition="right" selectedChild="#{menuRend.activeItem}" expandSingle="true" expandMode="ajax" rendered="#{identity.loggedIn}" >
<rich:panelMenuGroup label="#{msg['view.miasta.title']}" expanded="#{menuRend.activeItem=='dodajMiasto' || menuRend.activeItem=='listaMiast' ? true : false}">
<rich:panelMenuItem label="#{msg['view.miasta.dodaj']}" action="#{menuRend.addMiasto}" name="dodajMiasto">
<f:param name="miastaPkM"/>
</rich:panelMenuItem>
<rich:panelMenuItem label="#{msg['view.miasta.lista']}" action="#{menuRend.showMiasta}" name="listaMiast"/>
</rich:panelMenuGroup>
<rich:panelMenuGroup label="#{msg['view.jednostki.title']}" expanded="#{menuRend.activeItem=='dodajJednostke' || menuRend.activeItem=='listaJednostek' ? true : false}" >
<rich:panelMenuItem label="#{msg['view.jednostki.dodaj']}" action="#{menuRend.addJednostka}" name="dodajJednostke"/>
<rich:panelMenuItem label="#{msg['view.jednostki.lista']}" action="#{menuRend.showJednostki}" name="listaJednostek"/>
</rich:panelMenuGroup>
......