此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
楼主【clf2536】截止到2008-07-23 12:49:23的历史汇总数据(不包括此帖):
发帖的总数量:8                        发帖的总分数:410                      每贴平均分数:51                       
回帖的总数量:45                       得分贴总数量:12                       回帖的得分率:26%                      
结贴的总数量:8                        结贴的总分数:410                      
无满意结贴数:1                        无满意结贴分:100                      
未结的帖子数:0                        未结的总分数:0                        
结贴的百分比:100.00%               结分的百分比:100.00%                  
无满意结贴率:12.50 %               无满意结分率:24.39 %                  
敬礼!

解决方案 »

  1.   

    在你跳转后的页面右键-属性,查看url是否指向了正确的路径,肯定是上下文路径错误了。另外将你的action配置中调转页面前面的/都去掉
      

  2.   

    这是URL http://192.168.1.52:9000/hrMap/hrmap/hrMap.do?method=synByUser&code=1000其他方法跳转都没有问题,所以我觉得和action中开头加/没有关系
      

  3.   


    .......href="hrMap.do?method.....
    改成
    .......href="/hrMap.do?method.....
      

  4.   

    你的超链接和path属性不匹配:
    .......href="hrMap.do?method.....
    改成
    .......href="/hrmap/hrMap.do?method.....
      

  5.   

    System.out.println(org_idStr),System.out.println(list.get(0))和 System.out.println(mapping.findForward("synoauserlist").getPath())都可以正常打印出值 ,说明synByUser这个方法还是正常调用的吧,改href应该不对吧
      

  6.   

    URL应该是这样吧 http://192.168.1.52:9000/hrMap/hrMap.do?method=synByUser&code=1000  <a  class="MainLinks" href="/hrMap.do?method=synByUser&code=<bean:write name='list'
      

  7.   

    偶是说HrMapAction这个类继承DispatchAction 
      

  8.   

    所有的页面都是在tomcat5.0/webapps/hrMap/hrmap目录下
      

  9.   

     <forward name="synoauserlist" path="/hrmap/synuserlist.jsp"/>
    jsp文件名没错吧,是synoauserlist.jsp 还是synuserlist.jsp,
    如果没错的话,建议清楚tomcat webapp下的你的工程,以及tomcat work下的工程,重新发布
      

  10.   

    tomcat work下的工程也清除过了
      

  11.   

    发现个问题,path="/hrmap/hrMap" ......
    而href是这样<a  class="MainLinks" href="hrMap.do?method=synB......应该是这样<a  class="MainLinks" href="hrmap/hrMap.do?method=synB......是不是你的配置文件里还有path="hrMap"的配置,执行错了?
      

  12.   

    2008-07-23 14:18:16,296 [ERROR] - Invalid path /hrmap/hrmap/hrMap was requested改后就会报这个错,所以应该不是链接的问题。因为synByUser这个方法是可以正常调用的,因为后面的那些打印都正常输出;System.out.println(org_idStr)可以正常打印,说明页面传值没有问题;System.out.println(org_id)正常输出,说明转型也没问题;System.out.println(list.get(0))
    正常输出,services.getOaNewUserInDept(org_id)这个方法也没有问题;一开始我认为可能是struts-config.xml中action-mappings配置的问题,
    但是System.out.println(mapping.findForward("synoauserlist").getPath())也能正常输出,偶就想不出到底是什么原因导致无法找到页面了
      

  13.   

    如果System.out.println(mapping.findForward("synoauserlist").getPath())可以正常打印出值 
    那么就是能进入你的action了
    问题应该出在你forword里面
    试试把
    <forward name="synoauserlist" path="/hrmap/synuserlist.jsp"/>
    改成
    <forward name="synoauserlist" path="/hrmap/synuserlist.jsp" redirect="true"/>
    看看是不是这个地址配置错了
      

  14.   

    慢慢来,用debug看看你的程序运行流程。
      

  15.   

    request.getContenPath()
    在加上URL
      

  16.   

     href="hrMap.do?method=synByUser&code=<bean:write name='list' property='org_id'/>" 要改成href="hrMapForm.do?method=synByUser&code=<bean:write name='list' property='org_id'/>" 
      

  17.   

    href="hrMap.do?method=synByUser&code= <bean:write name='list' property='org_id'/>" 要改成href="/hrmap/hrMap.do?method=synByUser&code= <bean:write name='list' property='org_id'/>" 刚看错了不好意思
      

  18.   

    <forward name="synoauserlist" path="/hrmap/synuserlist.jsp"/>还有,把这里改成<forward name="synoauserlist" path="synuserlist.jsp"/>试试,我感觉最大的嫌疑就是这里
      

  19.   

    谢谢大家回帖,我找到问题的关键了,不是找不到页面,而是页面中接收不到hrMapForm
    javax.servlet.ServletException: Cannot find bean hrMapForm in any scope
    org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:825)
    org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:758)
    org.apache.jsp.hrmap.synuserlist_jsp._jspService(synuserlist_jsp.java:249)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
    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:802)
    com.hshz.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:49)
    root cause javax.servlet.jsp.JspException: Cannot find bean hrMapForm in any scope
    org.apache.struts.taglib.TagUtils.lookup(TagUtils.java:934)
    org.apache.struts.taglib.logic.IterateTag.doStartTag(IterateTag.java:232)
    org.apache.jsp.hrmap.synuserlist_jsp._jspService(synuserlist_jsp.java:178)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
    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:802)
    com.hshz.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:49)
    note The full stack trace of the root cause is available in the Apache Tomcat/5.0.28 logs.
    我的页面相关代码如下  <logic:iterate id="list" name="hrMapForm" property="oaDeptUser">
            <tr class="MainTableLine1">
              <td><input type="checkbox" name="user_id" value='<bean:write name="list" property="u_id"/>'></td>
              
                <td><a  class="MainLinks" href="" target="_self"><bean:write name="list" property="u_name"/></a></td>
                </a></td>
              <td><bean:write name="list" property="u_sex"/></td>
              <td><bean:write name="list" property="org_id"/></td>
             
         <td><a href='mailto:<bean:write name="list" property="u_mail"/>' class="BlueLinks">
                  <bean:write name="list" property="u_mail"/>
                </a></td>
            </tr>
          </logic:iterate>action中的方法如下public ActionForward synByUser(ActionMapping mapping, ActionForm form,
                HttpServletRequest request, HttpServletResponse response)throws NullPointerException{
            HrMapForm hrMapForm = (HrMapForm) form;
                   String org_idStr=(String)request.getParameter("code"); 
           
            System.out.println(org_idStr);
            
            
            long org_id=Long.parseLong(org_idStr);
            System.out.println(org_id);
            List list=services.getOaNewUserInDept(org_id);
            hrMapForm.setOaDeptUser(list);
            System.out.println(hrMapForm.getOaDeptUser());
            
          
            System.out.println(mapping.findForward("synoauserlist").getPath());
          
         
            
            return mapping.findForward("synoauserlist");
        }oaDeptUser属性和setter/getter方法在HrMapForm中都存在
      

  20.   

    你的页面位置:“该页面synuserlist在tomcat5.0/webapps/hrMap/hrmap目录下”,
    你的Action的位置:“ path="/hrmap/hrMap" ”,
    而你的链接是:“<a  class="MainLinks" href="hrMap.do”。你路径的大小写没注意!
    改一下路径名称就行了!
      

  21.   

    和路径没有关系,是hrMapForm传不过去的原因
      

  22.   

    问题解决啦,那散分啊,下次这样提交最好不要这样做
    下面看看
    <a href="#" onclick="go()"...........
    然后
    function go()
    {
       *Form.****.value = 页面获取到的值;
       ..........
       *Form.action="*Action.do?method=***";
       *Form.submit();}
    这样多清楚
      

  23.   

    问题还没解决呢,偶还是搞不清楚为什么页面找不到hrMapForm
      

  24.   

    最终解决了,哈哈,在struts-config.xml中的action中这样配就行了
    <forward name="synoauserlist" path="/hrmap/synuserlist.jsp" redirect="false"/> 
    散分