Sorry, this has been sitting in my inbox for awhile now. Can you please enter this as a bug in Struts Menu?

http://sourceforge.net/tracker/?func=add&group_id=48726&atid=453974

Thanks,

Matt

On Jan 9, 2005, at 6:52 PM, lixin chu wrote:

I guess it is becuase menu items are put into a
HashMap in MenuRepository, that's why the sequence is
not presevered.

--- lixin chu <[EMAIL PROTECTED]> wrote:

Hi,
would like check if anyone has encountered this
before.

i basically want to display menu items in a
particular
order. the menu items are stored in a database. I
followed the online example. I deliberatly store the
menu items into the database according to the view
sequence. The resulted list of items show the
corrent
sequnce. However, when jsp renders the topMenus, it
seems that it order is not what I stored in the
database (the sub menu items are all correctly
displayed in each top menu).

SQL query menu database:
------------------------
"from Menu p order by p.id asc"

in my StartupListener:
----------------------
MenuRepository defaultRepository = (MenuRepository)
context.getAttribute
(MenuRepository.MENU_REPOSITORY_KEY);
MenuRepository repository = new MenuRepository();

repository.setDisplayers(defaultRepository.getDisplayers());
MenuManager mgr = (MenuManager)
ctx.getBean("menuManager");

List menus = mgr.getMenus();
for (int i=0; i<menus.size();i++) {
  MenuComponent mc = new MenuComponent();
  Menu m = (Menu) menus.get(i);
  BeanUtils.copyProperties (mc, m);
  String parent = m.getParentName();
  if(parent != null) {
    MenuComponent parentMenu =
repository.getMenu(parent);
    if (parent == null) {
        parentMenu = new MenuComponent();       
parentMenu.setName(parent);             
repository.addMenu(parentMenu);
    }
    mc.setParent(parentMenu);
  }                     
  repository.addMenu(mc);
 }
                
context.setAttribute("menuRepository", repository);   
        

in my jsp file:
----------------
<menu:useMenuDisplayer name="ListMenu"
repository="menuRepository">
 <c:forEach var="menu"
items="${menuRepository.topMenus}">
    <menu-el:displayMenu name="${menu.name}"/>
 </c:forEach>
</menu:useMenuDisplayer>


I am not sure how to control the <c:forEach> with menuRepository so that it displays the topMenu in my intended order.

thanks
li xin


__________________________________ Do you Yahoo!? The all-new My Yahoo! - Get yours free! http://my.yahoo.com





-------------------------------------------------------
The SF.Net email is sponsored by: Beat the
post-holiday blues
Get a FREE limited edition SourceForge.net t-shirt
from ThinkGeek.
It's fun and FREE -- well,
almost....http://www.thinkgeek.com/sfshirt
_______________________________________________
struts-menu-user mailing list
[email protected]

https://lists.sourceforge.net/lists/listinfo/struts-menu-user




__________________________________ Do you Yahoo!? Read only the mail you want - Yahoo! Mail SpamGuard. http://promotions.yahoo.com/new_mail


------------------------------------------------------- The SF.Net email is sponsored by: Beat the post-holiday blues Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek. It's fun and FREE -- well, almost....http://www.thinkgeek.com/sfshirt _______________________________________________ struts-menu-user mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/struts-menu-user



------------------------------------------------------- This SF.net email is sponsored by Microsoft Mobile & Embedded DevCon 2005 Attend MEDC 2005 May 9-12 in Vegas. Learn more about the latest Windows Embedded(r) & Windows Mobile(tm) platforms, applications & content. Register by 3/29 & save $300 http://ads.osdn.com/?ad_id=6883&alloc_id=15149&op=click _______________________________________________ struts-menu-user mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/struts-menu-user

Reply via email to