javax.servlet.jsp.JspException: Cannot find bean under name list
这个异常,已经提示的很清楚了,因为找不到bean里名字为list的对象,既然找不到list,那就加上list呗,就这简单点事,但是要加在哪,那就要看你的程序了,不是说 Cannot find bean under name list就是在bean里,我的错误就是在action里,下面贴上我出错的位置

 

if(chargeStatPersonnelSelect==null||chargeStatChargeItemSelect==null||chargeStatManageDepartmentSelect==null)
  {
   try 
   {
    SQLBean sb = new SQLBean();
     
    list=sb.sqlSelectDynamic();
    selectDynamicPager = new SelectDynamicPager(list);
    list=selectDynamicPager.getPageList();
    request.setAttribute("list", list);
    request.setAttribute("SelectDynamic", selectDynamicPager);
   } 
   catch (Exception e) 
   {
    e.printStackTrace();
   }
  }
  return mapping.findForward("ChargeStatSucceed");

 上面这段代码说的是如果下拉列表里的值都为空,就去添加进list,不为空直接返回页面,因为下拉列表是动态的,所以我提交了错误的值之后,还要再返回页面,返回去的时候,下拉列表里肯定是已经存在这值的了,存在着值那就是不走if语句直接回到页面了,不走if语句也就走不到list,那理所当然就会Cannot find bean under name list了,

form表单中验证,到form表单验证,如果要数据没有填对,要返回错误信息的话,还是一样要刷新页面,所以,在form表单中有必要加上一句servlet.getServletContext().getRequestDispatcher("/SelectDynamic.do").forward(request, response);

接下来,还有返回,返回的时候也会刷新页面,那么,在返回的时候,该怎么办呢,就见仁见智了,可以再次提交一次,也可以不返回到那个页面,看自己了,就讲到这里

如果本文觉得对你有帮助,就顶我一下

 

黑色头发  http://heisetoufa.iteye.com