<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: 博客園 模板提供:滬江博客
    主站蜘蛛池模板: 亚洲va在线va天堂va四虎 | 亚洲男人电影天堂| 成人免费无码大片a毛片软件| 亚洲av永久无码| 亚洲av无码乱码国产精品fc2 | 亚洲色最新高清av网站| 亚洲Aⅴ无码一区二区二三区软件| 亚洲毛片基地4455ww| 午夜亚洲av永久无码精品| 日日麻批免费40分钟无码| 亚洲精品456人成在线| 好看的电影网站亚洲一区| 在线免费播放一级毛片| 亚洲国产高清美女在线观看| 一本色道久久88综合亚洲精品高清| 无码国产精品一区二区免费vr | 国产高清在线免费视频| 特级无码毛片免费视频尤物| 亚洲av日韩综合一区久热| 亚洲图片在线观看| 亚洲av高清在线观看一区二区 | 一级毛片成人免费看免费不卡| 国产精品亚洲专区无码唯爱网| 免费观看四虎精品国产永久| 无码国产精品一区二区免费vr| 特级av毛片免费观看| 亚洲色欲色欲www| 亚洲国产精品一区二区久久| 亚洲国产成人久久综合碰| 一二三四影视在线看片免费| 最近2019中文免费字幕在线观看| 国产精品久久久久久亚洲影视| 亚洲一级在线观看| 亚洲爱情岛论坛永久| 久久久久亚洲精品无码网址 | 亚洲精品天堂无码中文字幕| 亚洲欧洲日产v特级毛片| 国产av无码专区亚洲av桃花庵| 国产中文字幕免费观看| 成**人免费一级毛片| h视频在线观看免费完整版|