From: Matt R. <ma...@ra...> - 2009-04-02 14:08:50
|
Change the following to fetch items from your database and iterate through them to build up your MenuComponent objects. Result result = (Result) pageContext.getAttribute("menus"); Map[] rows = result.getRows(); *for *(*int *i=0; i < rows.length; i++) { Matt On Thu, Apr 2, 2009 at 8:00 AM, Jayaram Gokulan <kar...@ya...> wrote: > Thanks a ton for your reply Matt. I do not get the error now, but it is > redirecting to some other page, while i work on that. > > Can you please guide me on how i can fetch my menu items from database > instead of menu-config.xml > > thanks, > Gokul > > --- On *Wed, 4/1/09, Matt Raible <ma...@ra...>* wrote: > > > From: Matt Raible <ma...@ra...> > Subject: Re: [struts-menu] Struts 2 dynamic menu issue > To: "General mailing list for Struts Menu" < > str...@li...> > Date: Wednesday, April 1, 2009, 11:47 PM > > > Instead of registering it in your Spring applicationContext, I'd try using > the MenuContextListener in your web.xml: > <listener> > > <listener-class>net.sf.navigator.menu.MenuContextListener</listener-class> > </listener> > > If that doesn't work, look for errors on startup - you might be missing > some required JARs. > > Matt > > On Wed, Apr 1, 2009 at 10:39 PM, Jayaram Gokulan <kar...@ya...<http://us.mc348.mail.yahoo.com/mc/compose?to=kar...@ya...> > > wrote: > >> Hi, >> I use Struts2, Spring and hibernate in my project wanted to integrate >> Struts menu, the dynamic roles from oracle db. I followed the link >> >> http://demo.raibledesigns.com/struts-menu/dynamicMenu.jsp >> I copy pasted the code snippet into an action >> >> * >> >> import >> * > > java.util.Map; > > * > > import > * > javax.servlet.jsp.jstl.sql.Result; > > * > > import > *net.sf.navigator.menu.MenuComponent;* > > import > *net.sf.navigator.menu.MenuRepository; > > * > > public > **class* MenuBuilderAction *extends* BaseAction { > > /** > > * > > */ > > *private* *static* *final* *long* *serialVersionUID* = 1L; > > MenuRepository > > repository = *new* MenuRepository(); > > // Get the repository from the application scope - and copy the > > // DisplayerMappings from it. > > MenuRepository > defaultRepository = (MenuRepository) getSession() > > .getAttribute(MenuRepository. > *MENU_REPOSITORY_KEY*); > > //repository.setDisplayers(defaultRepository.getDisplayers()); > > Result > > result = (Result) getSession().getAttribute("menus"); > > Map[] > > rows = result.getRows();{ > > *for* (*int* i = 0; i < rows.length; i++) { > > MenuComponent mc = > *new* MenuComponent(); > > Map row = > rows[i]; > > String name = (String) row.get( > "name"); > > mc.setName(name); > > String parent = (String) row.get( > > "parent_name"); > > System. > *out*.println(name + ", parent is: " + parent); > > *if* (parent != *null*) { > > MenuComponent parentMenu = > repository.getMenu(parent); > > *if* (parentMenu == *null*) { > > System. > *out*.println("parentMenu '" + parent > > + > "' doesn't exist!"); > > // create a temporary parentMenu > > parentMenu = > *new* MenuComponent(); > > parentMenu.setName(parent); > > repository.addMenu(parentMenu); > > } > > mc.setParent(parentMenu); > > } > > String title = (String) row.get( > > "title"); > > mc.setTitle(title); > > String location = (String) row.get( > > "location"); > > mc.setLocation(location); > > repository.addMenu(mc); > > } > > getSession().setAttribute( > > "repository", repository); > > } > > } > > > *My menu-config.xml* > > > <? > xml version="1.0" encoding="UTF-8"?> > > < > MenuConfig> > > <Displayers> > > <Displayer name="Velocity" type= > "net.sf.navigator.displayer.VelocityMenuDisplayer"/> > > </Displayers> > > <Menus> > > <Menu name="MainMenu" title="mainMenu.title" page="/mainMenu.html" roles= > "ROLE_ADMIN,ROLE_USER"/> > > </Menu> > > </Menus> > > </ > MenuConfig> > > > > *ApplicationConfig.xml* > > < > bean id="menu" class="net.sf.navigator.menu.MenuLoader"> > > <property name="menuConfig"> > > <value>/WEB-INF/menu-config.xml</value> > > </property> </ > bean> > When i run my jsp i get > > javax.servlet.jsp.JspException: The menu repository could not be found. > > Kindly help > thanks, > Gokul > > > > > > > ------------------------------------------------------------------------------ > > _______________________________________________ > struts-menu-user mailing list > str...@li...<http://us.mc348.mail.yahoo.com/mc/compose?to=str...@li...> > https://lists.sourceforge.net/lists/listinfo/struts-menu-user > > > > -----Inline Attachment Follows----- > > > ------------------------------------------------------------------------------ > > -----Inline Attachment Follows----- > > > _______________________________________________ > struts-menu-user mailing list > str...@li...<http://us.mc348.mail.yahoo.com/mc/compose?to=str...@li...> > https://lists.sourceforge.net/lists/listinfo/struts-menu-user > > > > ------------------------------------------------------------------------------ > > _______________________________________________ > struts-menu-user mailing list > str...@li... > https://lists.sourceforge.net/lists/listinfo/struts-menu-user > > |