空間站

          北極心空

            BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
            15 Posts :: 393 Stories :: 160 Comments :: 0 Trackbacks

          公告

          本博客主要是在本人收集網上一些精彩技術文章,有時可能因疏忽轉載的時候沒有說明轉載出處和作者,如果您認為哪篇文章侵犯了你的版權,請通知本人: EMAIL:luwei-80@163.com 歡迎您光臨本博客!

          常用鏈接

          留言簿(15)

          我參與的團隊

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          1.       Overview

           

          Struts Menu應用是一個JSP標記的集合,支持從XML文件生成各種不同菜單系統。Struts Menu 2.0進行了重構,使用Velocity Templates定義菜單。

          2.       User Guide

           

          2.1.       1.x遷移到2.x

           

          要從Struts Menu1.x升級到2.x,需要做如下改變:

          l         修改標記庫聲明的URI,去掉“1.2

          <%@ taglib uri="http://struts-menu.sf.net/tag" prefix="menu" %>

          l         修改<plug-in>,使用新的包名“net.sf.navigator

          <plug-in className="net.sf.navigator.menu.MenuPlugIn">

          l         修改menu-config.xml文件,使用新的包名“net.sf.navigator

          <Displayer name="Simple" type="net.sf.navigator.displayer.SimpleMenuDisplayer"/>

          2.2.       快速啟動

           

          l         下載struts-menu分發包

          l         解壓縮到本地目錄

          l         下載并安裝Tomcat或其它Java Servlet容器

          l         struts-menu.war文件拷貝到Tomcat服務器的webapps目錄下,啟動服務器

          l         瀏覽http://localhost:8080/struts-menu

          2.3.       Struts Menu集成到應用中

           

          Struts Menu可以很方便得集成到Struts應用中,也將能夠集成到其它非struts的應用中。下面是繼承標記庫的步驟。

          你所需要做的就是將struts-menu.jar文件拷貝到WEB-INF/lib目錄下,并在JSP頁面中使用標記的URI以聲明標記庫。

          對于Struts Menu 2.1,還需要將JakartaStandard Tag Library Jar拷貝到WEB-INF/lib目錄下。

          l         struts-menu.jar文件拷貝到WEB-INF/lib目錄下

          l         struts-config.xml文件中添加<plug-in>設置

          <plug-in className="net.sf.navigator.menu.MenuPlugIn">

           

           

          <set-property property="menuConfig" value="/WEB-INF/menu-config.xml"/>

           

           

          </plug-in>

          l         WEB-INF/menu-config.xml文件中聲明菜單屬性。下面是一個示例:

          <Menu name="contactMenu" title="Contact" location="?Contact">

           

           

            <Item name="email" title="E-Mail" location="?EMail"/>

           

           

            <Item name="phone" title="Phone" location="?Phone"/>

           

           

          </Menu>

           

           

           

           

           

          詳細情況請參考例子應用的WEB-INF目錄下的menu-config.xml文件,并修改該文件以適應自己的應用。如果要了解所有相關屬性,請參考MenuBase類的標準文檔。

          l         JSP頁面中添加標記庫的聲明

          <%@ taglib uri="http://struts-menu.sf.net/tag" prefix="menu" %>

          l         JSP頁面中添加標記庫代碼以生成菜單

          <menu:useMenuDisplayer name="TabbedMenu"

           

           

          bundle="org.apache.struts.action.MESSAGE">

           

           

            <menu:displayMenu name="Home"/>

           

           

            <menu:displayMenu name="About"/>

           

           

          </menu:useMenuDisplayer>

          其中,name="TabbedMenu"是在menu-config.xml文件中定義的。如下:

           

           

          <Displayer name="TabbedMenu" type="net.sf.navigator.displayer.TabbedMenuDisplayer"/>

           

           

           

          要使用可定制的Velocity模板生成菜單,需要將Velocity集成到web應用中。具體步驟如下:

          l         確保menu-config.xml文件有如下定義:

             <Displayer name="Velocity" type="net.sf.navigator.displayer.VelocityMenuDisplayer"/>

          l         Velocity的相關jar文件拷貝到WEB-INF/lib目錄下

          l         globalMacros.vm文件添加到WEB-INF/classes目錄下

          l         JSP頁面中,修改為name="Velocity",并將config屬性指到一個文件(如config="/templates/tabs.html"),如果文件在WEB-INF/classes目錄下,就是config="tabs.html"

          3.       FAQ

           

          3.1.        在使用菜單訪問JSP時拋出異常:

          org.apache.jasper.JasperException: Could not obtain the menu repository

          解決方法:

          檢查struts-config.xml文件,確保添加如下plug-in設置

          <plug-in className="net.sf.navigator.menu.MenuPlugIn">

           

           

            <set-property property="menuConfig" value="/WEB-INF/menu-config.xml"/>

           

           

          </plug-in>

           

           

          <!-- The menuConfig property is an optional attribute. It is set to /WEB-INF/menu-config.xml by default. -->

           

           

           

           

           

          3.2.        如何基于角色隱藏/顯示菜單項

          先在JSP頁面中添加屬性permissions="rolesAdapter"<menu:useMenuDisplayer>標記中;然后在menu-config.xml文件中加入允許看到此菜單項的角色列表,角色之間以逗號分隔。

           

           

           

           

           

          3.3.        基于數據庫的動態菜單

          posted on 2007-06-16 14:58 蘆葦 閱讀(1378) 評論(2)  編輯  收藏 所屬分類: Struts

          Feedback

          # re: Struts Menu中文文檔綜述 2008-01-17 14:31 11
          11
            回復  更多評論
            

          # struts2中struts-menu的國際化 2008-03-07 10:16 cash
          struts2.0 中使用struts-menu,menu國際化是怎么弄了  回復  更多評論
            

          主站蜘蛛池模板: 凤庆县| 中西区| 应用必备| 淄博市| 洛扎县| 鱼台县| 青神县| 泰安市| 延庆县| 桦南县| 庄河市| 永川市| 沙雅县| 吉木萨尔县| 清新县| 灵台县| 天祝| 全南县| 龙岩市| 长沙市| 清丰县| 桦南县| 馆陶县| 吐鲁番市| 大安市| 同心县| 乐业县| 蒙城县| 乌鲁木齐县| 扎赉特旗| 阿合奇县| 商河县| 卢龙县| 南城县| 南江县| 朔州市| 安福县| 平顶山市| 新源县| 丽水市| 江西省|