Re: Replace JSP by velocity

david <hs_dna-9Onoh4P/[email protected]> Mon, 2 Jul 2007 16:55:42 +0800 (CST)
Newsgroups gmane.comp.java.struts-menu.user
Message-ID <763235024.1786041183366542945.JavaMail.coremail@bj163app105.163.com>
Yes, it works. But still some problems, such as variable is unsupported, till now, I only need static menu link, So it's okay to me. By the way, I did this in Appfuse. 
在2007-06-26,"Matt Raible" <matt-T7vlz3gD7BdF/EzeuO4KJwC/[email protected]> 写道:
Does this work? On 6/22/07, david <hs_dna-9Onoh4P/[email protected]> wrote: > Hi, > > I've try out a simple version. I put the menu repository to application > context with key "struts-menu-repository", as velocity treats '.' as method > or field access, so key like "struts.menu.repository" doesn't work. And I > also put a permission adapter "permission-adapter" to request context. $msg > and $link are velocity struts tools. > > The menu.vm file: > -------------------------------------------------------- > > #macro(setURL $menuItem) > #if($menuItem.components.size() > 0) > #foreach($subMenuItem in $menuItem.components) > #setURL($subMenuItem) > #end > #end > #if(!$menuItem.url) > #if($menuItem.page) > > $menuItem.setUrl($link.setRelative($menuItem.page).toString()) > #else > #if($menuItem.forward) > > $menuItem.setUrl($link.setForward($menuItem.forward).toString()) > #else > #if($menuItem.action) > > $menuItem.setUrl($link.setAction($menuItem.action).toString()) > #else > #if($menuItem.location) > $menuItem.setUrl($menuItem.location) > #else > #if($menuItem.components.size>0) > $menuItem.setUrl($menuItem.components.get(0).url) #end > #end > #end > #end > #end > #end > #end > > #macro(displayMenu $menuItem $currentMenu) > #set ($title = $msg.get($menuItem.title)) > #setURL($menuItem) > #set ($hasSub = $menuItem.components.size() > 0) > <li #if($hasSub)class="menubar" #end><a href="$!{menuItem.url}" > title="$title"#if($menuItem.target)target="$menuItem.target"#end > #if($menuItem.name.equals($currentMenu))class="current"#end>${title}</a> > #if ($hasSub) > <ul class="submenu"> > #foreach($subMenuItem in $menuItem.components) > #displayMenu($subMenuItem $currentMenu) > #end > </ul> > #end > </li> > #end > > <ul id="primary-nav" class="menuList"> > #set($menu-keys = > ["MainMenu","UserMenu","FileUpload","AdminMenu","Logout"]) > #foreach($menu-key in $menu-keys) > #set($menu = $struts-menu-repository.getMenu($menu-key)) > #if ($permission-adapter.isAllowed($menu)) > #displayMenu($menu $currentMenu) ##set current menu in your page > #end > #end > </ul> > > ----------------------------------------- > > David > > > 在2007-06-17,"Matt Raible" <matt-T7vlz3gD7BdF/EzeuO4KJwC/[email protected]> 写道: > > The Menu Repository is stuffed into the ServletContext by Struts Menu, > so you should be able to grab it out and iterate through it. I've > never tried it, but I've heard of others doing this. > > You might also look at FreeMarker which is similar to Velocity and > allows JSP Tags. If you end up developing macros to render the menus, > let me know - I'd love to have this type of feature in Struts Menu. > > Matt > > On 6/17/07, david <hs_dna-9Onoh4P/[email protected]> wrote: > > Hi All, > > > > I am new to struts-menu, I have a web site with velocity for view layer. > Now > > I want to add struts-menu to it, can I use velocity but not JSP as > > struts-menu's page presentation? > > > > Thanks and regards, > > > > David > > > > > > > > ________________________________ > 150 万 人 同 时 在 玩 的 网 游,你 不 试 试 吗 ? > ------------------------------------------------------------------------- > This SF.net email is sponsored by DB2 Express > Download DB2 Express C - the FREE version of DB2 express and take > control of your XML. No limits. Just data. Click to get it now. > http://sourceforge.net/powerbar/db2/ > _______________________________________________ > struts-menu-user mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/struts-menu-user > > -- http://raibledesigns.com ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ _______________________________________________ struts-menu-user mailing list struts-menu-user-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org https://lists.sourceforge.net/lists/listinfo/struts-menu-user

-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/

_______________________________________________
struts-menu-user mailing list
struts-menu-user-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org
https://lists.sourceforge.net/lists/listinfo/struts-menu-user