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> ......