<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Ready Test? Go, Go, Go !!!
     

    關(guān)注測(cè)試,也關(guān)注成長(zhǎng)

    公告
    • 關(guān)注軟件測(cè)試自動(dòng)化,性能測(cè)試。
      目前負(fù)責(zé)醫(yī)療軟件功能測(cè)試以及
      測(cè)試過(guò)程改進(jìn)

    日歷
    <2008年1月>
    303112345
    6789101112
    13141516171819
    20212223242526
    272829303112
    3456789
    統(tǒng)計(jì)
    • 隨筆 - 22
    • 文章 - 0
    • 評(píng)論 - 87
    • 引用 - 0

    導(dǎo)航

    常用鏈接

    留言簿(17)

    隨筆分類

    隨筆檔案

    搜索

    •  

    最新評(píng)論

    閱讀排行榜

    評(píng)論排行榜

     

    原文作者:UPS   Kylin項(xiàng)目小組

    準(zhǔn)備工作
    :

    下載struts menu, 解壓其中的示例包(struts-menu里面有些庫(kù)沒有提供,但示例里面有) 

    步驟

    1,新建一個(gè)tomcat工程

    2,添加webProject支持

    未標(biāo)題-1.jpg

    3,增加struts支持
    未標(biāo)題-2.jpg

    4,增加jstl支持

    未標(biāo)題-3.jpg

    5, 拷貝必要的jar庫(kù)文件到dbMenu\WEB-INF\lib

           log4j-1.2.8.jar

    velocity-1.4.jar

    velocity-tools-view-1.0.jar

    struts-menu-2.3.jar 

    6,創(chuàng)建menu-config.xml文件在dbMenu\WEB-INF目錄。內(nèi)容如下:

    <?xml version="1.0" encoding="UTF-8" ?>

    <MenuConfig>

      
    <Displayers>
        
    <Displayer   name="DropDown"
                     type
    ="net.sf.navigator.displayer.DropDownMenuDisplayer"/>
        
    <Displayer   name="Simple"
                     type
    ="net.sf.navigator.displayer.SimpleMenuDisplayer"/>
        
    <Displayer   name="CoolMenu"
                     type
    ="net.sf.navigator.displayer.CoolMenuDisplayer"/>
        
    <Displayer   name="CoolMenu4"
                     type
    ="net.sf.navigator.displayer.CoolMenuDisplayer4"/>
        
    <Displayer   name="MenuForm"
                     type
    ="net.sf.navigator.example.PermissionsFormMenuDisplayer"/>
        
    <Displayer   name="ListMenu"
                     type
    ="net.sf.navigator.displayer.ListMenuDisplayer"/>
        
    <Displayer   name="TabbedMenu"
                     type
    ="net.sf.navigator.displayer.TabbedMenuDisplayer"/>
        
    <Displayer   name="Velocity"
                     type
    ="net.sf.navigator.displayer.VelocityMenuDisplayer"/>
      
    </Displayers>
      
    </MenuConfig>

    7,修改struts-config.xml 文件,增加如下部分

       <plug-in className="net.sf.navigator.menu.MenuPlugIn">
          
    <set-property property="menuConfig"
            value
    ="/WEB-INF/menu-config.xml"/>
       
    </plug-in>

    8,拷貝必要的文件

           Images/*.*

           Scripts/        menuExpandable.js xtree.js

           Styles/     menuExpandable.css   global.css   xtree.css

           Templates/xtree.html

           dbMenu\WEB-INF\classes\globalMacros.vm   (這個(gè)文件好像必須要最后拷貝,否則會(huì)自動(dòng)沒了why???)

    10, 拷貝tld文件到dbMenu\WEB-INF

           struts-menu.tld
          
    struts-menu-el.tld 

    11, 不知道什么原因,需要修改web.xml文件中的version=2.3

    <web-app version="2.3">

           Web.xml中增加

    <context-param>
            
    <param-name>javax.servlet.jsp.jstl.fmt.localizationContext</param-name>
            
    <param-value>TrackerRes</param-value>
        
    </context-param>

    11,創(chuàng)建數(shù)據(jù)庫(kù)

           仿造如下代碼創(chuàng)建數(shù)據(jù)庫(kù)

        <sql:update>
            
    CREATE TABLE menu_item (
               id BIGINT 
    not null
    ,
               parent_name 
    VARCHAR(30
    ),
               name 
    VARCHAR(30
    ),
               title 
    VARCHAR(30
    ),
               description 
    VARCHAR(50
    ),
               location 
    VARCHAR(255
    ),
               target 
    VARCHAR(10
    ),
               onclick 
    VARCHAR(100
    ),
               onmouseover 
    VARCHAR(100
    ),
               onmouseout 
    VARCHAR(100
    ),
               
    image VARCHAR(50
    ),
               altImage 
    VARCHAR(30
    ),
               tooltip 
    VARCHAR(100
    ),
               roles 
    VARCHAR(100
    ),
               page 
    VARCHAR(255
    ),
               width 
    VARCHAR(5
    ),
               height 
    VARCHAR(5
    ),
               forward 
    VARCHAR(50
    ),
               action 
    VARCHAR(50
    ),
               
    primary key
     (id)
            )
    </sql:update>

    12,填寫數(shù)據(jù)庫(kù)
    未標(biāo)題-4.jpg

    13,創(chuàng)建index.jsp文件

    <%@ page contentType="text/html; charset=UTF-8" %>


    <%@ taglib uri="/WEB-INF/struts-menu.tld" prefix="menu" %>
    <%@ taglib uri="/WEB-INF/struts-menu-el.tld" prefix="menu-el" %>
    <%@ taglib uri="/WEB-INF/c.tld" prefix="c" %>
    <%@ taglib uri="/WEB-INF/fmt.tld" prefix="fmt" %>
    <%@ taglib uri="/WEB-INF/sql.tld" prefix="sql" %>


    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
        
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
        

    <%@ page import="java.util.Map,
                     javax.servlet.jsp.jstl.sql.Result,
                     net.sf.navigator.menu.MenuComponent,
                     net.sf.navigator.menu.MenuRepository
    "%>

                     
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">

    <head>
    <title>menu test</title>
       
        
        
    <link rel="stylesheet" type="text/css" media="screen" href="styles/global.css" />
        
    <link rel="stylesheet" type="text/css" media="screen" href="styles/menuExpandable.css"/>
        
    <script type="text/javascript" src="scripts/menuExpandable.js"></script>
        
    <link rel="stylesheet" type="text/css" media="all"    href="styles/xtree.css"/>
        
    <script type="text/javascript" src="scripts/xtree.js"></script>      
        
    <script type="text/javascript">

            
    /* Function for showing and hiding elements that use 'display:none' to hide */
            function toggleDisplay(targetId) {
                
    if (document.getElementById) {
                    target 
    =
     document.getElementById(targetId);
                    
    if (target.style.display == "none"
    ){
                        target.style.display 
    = ""
    ;
                    } 
    else
     {
                        target.style.display 
    = "none"
    ;
                    }
                }
            }
        
    </script>

        
    </head>
    <body>

    <sql:setDataSource driver="sun.jdbc.odbc.JdbcOdbcDriver"  user="" password=""
     url
    ="jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=D:\\Program Files\\eclipse302\\workspace\dbMenu\\dm.mdb"
     var
    ="mydb" />

    <sql:transaction dataSource="${mydb}">

        
    <sql:query var="menus">
            SELECT 
    * FROM dm order by id;
        
    </sql:query>


    </sql:transaction>
     
        
    <%
            
    // I had issues using the existing repository - creating a new one
            
    //
     seems to solve the problem.  If you figure out how to use the default
            
    //
     Repository and keep your menus from duplicating themselves - please
            
    // let me know!


            MenuRepository repository 
    = new MenuRepository();
            
    //
     Get the repository from the application scope - and copy the
            
    // DisplayerMappings from it.

            MenuRepository defaultRepository = (MenuRepository)
                    application.getAttribute(MenuRepository.MENU_REPOSITORY_KEY);
            repository.setDisplayers(defaultRepository.getDisplayers());

            Result result 
    = (Result) pageContext.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);
            }
            pageContext.setAttribute(
    "repository"
    , repository);
        
    %>




    menu test
    <hr>

    <a href="tabbedMenu.jsp?home">static Tab Menu </a>

    <hr>

    <a href="dbtabbedMenu.jsp?home"> Database Driven Tab Menu </a>

    <hr>

    <a href="xmlForm.jsp"> static Xml Roles Menu </a>

    <hr>

    <a href="myRolesForm.jsp"> dababase driven Roles Menu </a>

    <hr>

    <h1>Database Driven Menu</h1>

    <hr>
        
    <div class="dynamicMenu">
            
    <menu:useMenuDisplayer name="ListMenu" repository="repository">
                
    <menu:displayMenu name="DatabaseMenu"/>
                
    <menu:displayMenu name="StandaloneMenu"/>
                
    <menu:displayMenu name="niupi"/>
            
    </menu:useMenuDisplayer>
        
    </div>
    <hr>
        
    <div class="dynamicMenu tree">
        
    <script type="text/javascript">
            
    <menu:useMenuDisplayer name="Velocity" config="/templates/xtree.html"
                repository
    ="repository">
              
    <c:forEach var="menu" items="${repository.topMenus}">
                
    <menu-el:displayMenu name="${menu.name}"/>
              
    </c:forEach>
            
    </menu:useMenuDisplayer>
        
    </script>
        
    </div>
        
    <hr>

    </body>
    </html>

    14,效果圖:
    未標(biāo)題-5.jpg

    上邊部分是listview樣式顯示的效果

    下邊部分是xtree樣式顯示的效果

    ==================================
    關(guān)于其中遇到的問題,如果你知道答案的話一定要告訴我哦^_^先謝謝啦

    posted on 2005-06-17 21:19 Cinderella 閱讀(11917) 評(píng)論(25)  編輯  收藏 所屬分類: 程序設(shè)計(jì)
    評(píng)論:
    • # re: 使用struts-menu_詳細(xì)(1)實(shí)現(xiàn)動(dòng)態(tài)菜單  read Posted @ 2005-07-06 16:04
      能把你的實(shí)例代碼,和文件給我發(fā)一份嗎????
      c.tld fmt.tld sql.tld

      謝謝拉

      xiuyanzh@21cn.com  回復(fù)  更多評(píng)論   

    • # re: 使用struts-menu_詳細(xì)(1)實(shí)現(xiàn)動(dòng)態(tài)菜單  jdskyy Posted @ 2005-07-22 14:13
      測(cè)試多次都沒有成功,能得到你運(yùn)行成功的代碼嗎

      jdskyy@hotmail.com  回復(fù)  更多評(píng)論   

    • # re: 使用struts-menu_詳細(xì)(1)實(shí)現(xiàn)動(dòng)態(tài)菜單  zcl Posted @ 2005-08-04 17:35
      henhao  回復(fù)  更多評(píng)論   

    • # re: 使用struts-menu_詳細(xì)(1)實(shí)現(xiàn)動(dòng)態(tài)菜單   Posted @ 2005-08-06 09:43
      dbMenu\WEB-INF\classes\globalMacros.vm (這個(gè)文件好像必須要最后拷貝,否則會(huì)自動(dòng)沒了why???)
      ================

      原因是web-inf下的東西是經(jīng)過(guò)編譯構(gòu)件后產(chǎn)生的,你源代碼里面沒有這個(gè)文件,而直接拷貝到該目錄下,當(dāng)重新編譯的時(shí)候,系統(tǒng)會(huì)先刪除該目錄下的所有文件,然后再產(chǎn)生編譯后的文件。
      你可以拷貝該文件到源代碼的根目錄 ,這樣編譯后就會(huì)在web-inf\classes目錄看到該文件啦:)  回復(fù)  更多評(píng)論   

    • # re: 使用struts-menu_詳細(xì)(1)實(shí)現(xiàn)動(dòng)態(tài)菜單  davidy Posted @ 2005-08-10 13:34
      主人一點(diǎn)專業(yè)精神也沒有,我照你說(shuō)做了,根本不成功.錯(cuò)誤的.
      把你整個(gè)完整的工程,代碼貼出來(lái),證明一下啊.浪費(fèi)我時(shí)間.
      <menu:displayMenu name="DatabaseMenu"/>
      錯(cuò)誤信息是:
      2005-08-10 13:29:37 net.sf.navigator.taglib.DisplayMenuTag[http-8080-Processor25] - No menu in repository with name: StandaloneMenu

      要貼就貼對(duì)的出來(lái),不要不負(fù)責(zé)任!!!!!!  回復(fù)  更多評(píng)論   

    • # re: 使用struts-menu_詳細(xì)(1)實(shí)現(xiàn)動(dòng)態(tài)菜單  小王 Posted @ 2005-08-14 16:52
      我運(yùn)行之后,總提示如下錯(cuò)誤:不知這是為什么?
      type Exception report

      message

      description The server encountered an internal error () that prevented it from fulfilling this request.

      exception

      javax.servlet.ServletException: javax.servlet.jsp.JspException: Error initializing Velocity: org.apache.velocity.exception.ResourceNotFoundException: Unable to find resource 'templates/xtree.html'
      org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:821)
      org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:758)
      org.apache.jsp.admin.left_jsp._jspService(left_jsp.java:108)
      org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
      javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
      org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:298)
      org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
      org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
      javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
      edu.xxcb.jxpg.util.MyEncodingFilter.doFilter(MyEncodingFilter.java:26)


      root cause

      javax.servlet.jsp.JspException: Error initializing Velocity: org.apache.velocity.exception.ResourceNotFoundException: Unable to find resource 'templates/xtree.html'
      net.sf.navigator.displayer.VelocityMenuDisplayer.displayComponents(VelocityMenuDisplayer.java:128)
      net.sf.navigator.displayer.VelocityMenuDisplayer.display(VelocityMenuDisplayer.java:99)
      net.sf.navigator.taglib.DisplayMenuTag.doStartTag(DisplayMenuTag.java:130)
      org.apache.jsp.admin.left_jsp._jspx_meth_menu_displayMenu_0(left_jsp.java:162)
      org.apache.jsp.admin.left_jsp._jspx_meth_menu_useMenuDisplayer_0(left_jsp.java:133)
      org.apache.jsp.admin.left_jsp._jspService(left_jsp.java:96)
      org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
      javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
      org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:298)
      org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
      org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
      javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
      edu.xxcb.jxpg.util.MyEncodingFilter.doFilter(MyEncodingFilter.java:26)


      root cause

      org.apache.velocity.exception.ResourceNotFoundException: Unable to find resource 'templates/xtree.html'
      org.apache.velocity.runtime.resource.ResourceManagerImpl.loadResource(ResourceManagerImpl.java:458)
      org.apache.velocity.runtime.resource.ResourceManagerImpl.getResource(ResourceManagerImpl.java:341)
      org.apache.velocity.runtime.RuntimeInstance.getTemplate(RuntimeInstance.java:831)
      org.apache.velocity.runtime.RuntimeInstance.getTemplate(RuntimeInstance.java:813)
      org.apache.velocity.runtime.RuntimeSingleton.getTemplate(RuntimeSingleton.java:285)
      org.apache.velocity.app.Velocity.getTemplate(Velocity.java:469)
      net.sf.navigator.displayer.VelocityMenuDisplayer.displayComponents(VelocityMenuDisplayer.java:124)
      net.sf.navigator.displayer.VelocityMenuDisplayer.display(VelocityMenuDisplayer.java:99)
      net.sf.navigator.taglib.DisplayMenuTag.doStartTag(DisplayMenuTag.java:130)
      org.apache.jsp.admin.left_jsp._jspx_meth_menu_displayMenu_0(left_jsp.java:162)
      org.apache.jsp.admin.left_jsp._jspx_meth_menu_useMenuDisplayer_0(left_jsp.java:133)
      org.apache.jsp.admin.left_jsp._jspService(left_jsp.java:96)
      org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
      javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
      org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:298)
      org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
      org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
      javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
      edu.xxcb.jxpg.util.MyEncodingFilter.doFilter(MyEncodingFilter.java:26)


      note The full stack trace of the root cause is available in the Apache Tomcat/5.0.24 logs.

        回復(fù)  更多評(píng)論   

    • # re: 使用struts-menu_詳細(xì)(1)實(shí)現(xiàn)動(dòng)態(tài)菜單  Cinderella Posted @ 2005-08-15 17:30
      在templats文件夾下面有一個(gè)名為xtree.html,其內(nèi)容如下
      ## displayMenu is defined in WEB-INF/classes/globalMacros.vm
      #macro( menuItem $menu $level )
      ## set title
      #set ($title = $displayer.getMessage($menu.title))
      #set ($node = $menu.name)
      #if ($level == 0)
      var $node = new WebFXTree('$title'#if($menu.url),'$!menu.url'#end);
      #else
      var $node = new WebFXTreeItem('$title'#if($menu.url),'$!menu.url'#end);
      ${menu.parent.name}.add($node);
      #end
      #end

      #displayMenu($menu 0)
      document.write($menu.name);
        回復(fù)  更多評(píng)論   

    • # re: 使用struts-menu_詳細(xì)(1)實(shí)現(xiàn)動(dòng)態(tài)菜單  kjj Posted @ 2005-08-15 23:45
      雖然代碼里有一些錯(cuò)誤,但也不是你們說(shuō)的那么嚴(yán)重
      #錯(cuò)誤一 :<sql:query var="menus">
      SELECT * FROM dm order by id;
      </sql:query>

      應(yīng)為 <sql:query var="menus">
      SELECT * FROM menu_item order by id;
      </sql:query>

      最后大家要把數(shù)據(jù)源部分換成自己的數(shù)據(jù)庫(kù)參數(shù)
      <sql:setDataSource driver="sun.jdbc.odbc.JdbcOdbcDriver" user="" password=""
      url="jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=D:\\Program Files\\eclipse302\\workspace\dbMenu\\dm.mdb"
      var="mydb" />
      我運(yùn)行了哈,呵呵,出來(lái)了!  回復(fù)  更多評(píng)論   

    • # re: 使用struts-menu_詳細(xì)(1)實(shí)現(xiàn)動(dòng)態(tài)菜單  sdf Posted @ 2005-08-16 21:31
      sdfsfdsdf  回復(fù)  更多評(píng)論   

    • # re: 使用struts-menu_詳細(xì)(1)實(shí)現(xiàn)動(dòng)態(tài)菜單  betty Posted @ 2005-08-16 21:32
      錯(cuò)誤信息是:
      2005-08-10 13:29:37 net.sf.navigator.taglib.DisplayMenuTag[http-8080-Processor25] - No menu in repository with name: StandaloneMenu
      這個(gè)信息是你表里沒有StandaloneMenu 這個(gè)內(nèi)容,樓主貼出來(lái)的表里的內(nèi)容也得照填.我運(yùn)行是運(yùn)行了,但是不穩(wěn)定.時(shí)好時(shí)壞,不知道怎么回事  回復(fù)  更多評(píng)論   

    • # re: 使用struts-menu_詳細(xì)(1)實(shí)現(xiàn)動(dòng)態(tài)菜單  champagne Posted @ 2005-08-21 11:30
      請(qǐng)教樓主,為什么我的菜單好像根本不運(yùn)行menuExpandable.js呢?
      根本顯示不出圖片

      另外漢字也顯示不了!!


      緊急求教!!!!!!!!!!!!!!!!!!

      我的郵箱hanxb2001@163.com  回復(fù)  更多評(píng)論   

    • # re: 使用struts-menu_詳細(xì)(1)實(shí)現(xiàn)動(dòng)態(tài)菜單  champagne Posted @ 2005-08-21 11:37
      我的開發(fā)環(huán)境是JBuilder2005,是在Struts中使用Struts-Menu的。
      Struts-Menu.war應(yīng)用拿到JBuilder2005中就運(yùn)行就不正常!
      現(xiàn)在是菜單出來(lái)了,但是不是可收縮、展開的,而是直接都展開,費(fèi)了好幾天勁也解決不了,求助各位兄弟!!!!!!

      本人是個(gè)JavaScript盲,也不想學(xué)了,只要能夠用就行了。
        回復(fù)  更多評(píng)論   

    • # re: 使用struts-menu_詳細(xì)(1)實(shí)現(xiàn)動(dòng)態(tài)菜單  閃來(lái)閃去的饅頭 Posted @ 2005-09-08 13:53
      效果圖是蠻漂亮的,不過(guò)實(shí)現(xiàn)起來(lái)怎么這么復(fù)雜啊~~  回復(fù)  更多評(píng)論   

    • # re: 使用struts-menu_詳細(xì)(1)實(shí)現(xiàn)動(dòng)態(tài)菜單  閃來(lái)閃去的饅頭 Posted @ 2005-09-08 13:54
      不知道用dtree是不是容易些  回復(fù)  更多評(píng)論   

    • # re: 使用struts-menu_詳細(xì)(1)實(shí)現(xiàn)動(dòng)態(tài)菜單  波波 Posted @ 2005-09-09 15:02
      唉,失敗,總是沒有成功!
      能不能把你的代碼發(fā)到我郵箱?謝謝,兄弟!
      zbwy1984@163.com  回復(fù)  更多評(píng)論   

    • # re: 使用struts-menu_詳細(xì)(1)實(shí)現(xiàn)動(dòng)態(tài)菜單  閃來(lái)閃去的饅頭 Posted @ 2005-09-09 15:09
      不好意思,偶也木用過(guò),只是隨便這么一說(shuō)  回復(fù)  更多評(píng)論   

    • # re: 使用struts-menu_詳細(xì)(1)實(shí)現(xiàn)動(dòng)態(tài)菜單  zouyan Posted @ 2005-11-04 10:00
      其實(shí)代碼只有一點(diǎn)小小的錯(cuò)誤,我運(yùn)行出來(lái)了,我把錯(cuò)誤總結(jié)一下:

      錯(cuò)誤一: dbMenu\WEB-INF\classes\globalMacros.vm (這個(gè)文件好像必須要最后拷貝,否則會(huì)自動(dòng)沒了why???)

      應(yīng)該把globalMacros.vm文件放在src源文件的根目錄下,放在classes目錄下每次源文件編譯的時(shí)候就會(huì)把globalMacros.vm文件刪除掉,

      錯(cuò)誤二:<web-app version="2.3">

      不需要加版本號(hào),直接就是:<web-app>

      錯(cuò)誤三:
      <%@ taglib uri="/WEB-INF/c.tld" prefix="c" %>
      <%@ taglib uri="/WEB-INF/fmt.tld" prefix="fmt" %>
      <%@ taglib uri="/WEB-INF/sql.tld" prefix="sql" %>

      這幾個(gè)tld文件好像不是最新的,最好是這樣寫
      <%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>
      <%@ taglib uri="http://java.sun.com/jstl/fmt" prefix="fmt" %>
      <%@ taglib uri="http://java.sun.com/jstl/sql" prefix="sql" %>

      錯(cuò)誤四:<sql:query var="menus">
      SELECT * FROM dm order by id;
      </sql:query>

      應(yīng)改為 <sql:query var="menus">
      SELECT * FROM menu_item order by id;
      </sql:query>

      最后大家要把數(shù)據(jù)源部分換成自己的數(shù)據(jù)庫(kù)參數(shù)
      <sql:setDataSource driver="sun.jdbc.odbc.JdbcOdbcDriver" user="" password=""
      url="jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=D:\\Program Files\\eclipse302\\workspace\dbMenu\\dm.mdb"
      var="mydb" />

      注意:var只是一個(gè)數(shù)據(jù)庫(kù)的別名而已。

      <sql:transaction dataSource="${mydb}">
      這里的dataSource="${mydb}"一定要與別人保持一致  回復(fù)  更多評(píng)論   

    • # re: 使用struts-menu_詳細(xì)(1)實(shí)現(xiàn)動(dòng)態(tài)菜單  看不過(guò)去! Posted @ 2005-12-24 00:25
      拜托,這也算原創(chuàng)?  回復(fù)  更多評(píng)論   

    • # re: 使用struts-menu_詳細(xì)(1)實(shí)現(xiàn)動(dòng)態(tài)菜單  wen4516 Posted @ 2006-04-30 21:25
      <c:forEach var="menu" items="${repository.topMenus}">
      <menu-el:displayMenu name="${menu.name}"/>
      </c:forEach>


      這一句能否不用jstl實(shí)現(xiàn)。。。。  回復(fù)  更多評(píng)論   

    • # re: 使用struts-menu_詳細(xì)(1)實(shí)現(xiàn)動(dòng)態(tài)菜單  李鋒 Posted @ 2006-05-01 19:49
      我也要一份啊!!!
      我的郵箱是:li_fengjobs@163.com  回復(fù)  更多評(píng)論   

    • # re: 使用struts-menu_詳細(xì)(1)實(shí)現(xiàn)動(dòng)態(tài)菜單  Jimmy Posted @ 2006-05-25 16:01
      錯(cuò)誤都不是一樣的.我這里運(yùn)行錯(cuò)誤是這樣的
      java.sql.SQLException: No suitable driver
      搞了兩天都沒解決....氣死我了...
      還有一個(gè)就是dataSource="${mydb}"我這里這樣寫還提示有錯(cuò),把$去掉才沒提示有錯(cuò).這是為何..<c:forEach var="menu" items="${repository.topMenus}">這里也是一樣的..我真是不懂.本來(lái)想學(xué)學(xué)Struts-menu的,這樣一弄,都不知道怎么做了,以前沒用過(guò).有人幫幫我嗎..  回復(fù)  更多評(píng)論   

    • # re: 使用struts-menu_詳細(xì)(1)實(shí)現(xiàn)動(dòng)態(tài)菜單  Jimmy Posted @ 2006-05-25 16:02
      jdzywang@163.com我的郵箱,有人幫我的話請(qǐng)發(fā)到這里..
      ありがとう  回復(fù)  更多評(píng)論   

    • # 用struts  楷子狐 Posted @ 2008-01-10 19:44
      我們公司也有用Struts的,我不是很懂,不過(guò)還好,做測(cè)試還能應(yīng)付。  回復(fù)  更多評(píng)論   

    • # re: 使用struts-menu_詳細(xì)(1)實(shí)現(xiàn)動(dòng)態(tài)菜單  qpyong Posted @ 2008-04-04 21:08
      @davidy
      你不要看就不浪費(fèi)你時(shí)間啦,,, 看了還說(shuō)風(fēng)涼話!!!  回復(fù)  更多評(píng)論   

    • # re: 使用struts-menu_詳細(xì)(1)實(shí)現(xiàn)動(dòng)態(tài)菜單  撒旦撒 Posted @ 2014-07-17 15:56
      中!國(guó)!共!產(chǎn)!黨!萬(wàn)!歲  回復(fù)  更多評(píng)論   

     
    Copyright © Cinderella Powered by: 博客園 模板提供:滬江博客
    主站蜘蛛池模板: 久久亚洲综合色一区二区三区| 亚洲国产精品尤物YW在线观看| 亚洲AV中文无码乱人伦下载| xxxxx做受大片视频免费| 一本色道久久88亚洲综合| 羞羞视频免费观看| 国产成人高清亚洲| 久久er国产精品免费观看8| 亚洲午夜未满十八勿入网站2| 中国一级特黄高清免费的大片中国一级黄色片| 亚洲阿v天堂在线2017免费| 精品无码一级毛片免费视频观看| 亚洲一区二区女搞男| 一级毛片不卡片免费观看| 亚洲成人免费在线观看| 性做久久久久久免费观看| 国产精品亚洲一区二区三区| 亚洲AV永久无码精品一区二区国产| 亚洲精品偷拍视频免费观看| 亚洲国产精品成人精品无码区在线| 97无码人妻福利免费公开在线视频 | 国内精品99亚洲免费高清| 久久久无码精品亚洲日韩按摩| 亚洲免费网站在线观看| 亚洲国产精品无码久久久秋霞1| 日本一道本高清免费| 久久性生大片免费观看性| 久久精品国产亚洲av四虎| 久草在视频免费福利| 精品久久亚洲一级α| 亚洲午夜久久久久久久久电影网| 99热这里只有精品免费播放| 亚洲卡一卡二卡乱码新区| 亚洲综合av一区二区三区不卡| 日韩一级免费视频| 13小箩利洗澡无码视频网站免费 | 久久青青草原亚洲av无码app| 国产一卡2卡3卡4卡2021免费观看 国产一卡2卡3卡4卡无卡免费视频 | 亚洲黄黄黄网站在线观看| 久久免费福利视频| 亚洲AV无码一区二区三区鸳鸯影院|