严重: Servlet.service() for servlet jsp threw exception
javax.servlet.jsp.JspException: Cannot find bean [com.yeecai.vo.SmFunctionVo@193a6a5, com.yeecai.vo.SmFunctionVo@a1a199, com.yeecai.vo.SmFunctionVo@1787144, com.yeecai.vo.SmFunctionVo@545646, com.yeecai.vo.SmFunctionVo@ec2ea8] in any scope
at org.apache.struts.taglib.TagUtils.lookup(TagUtils.java:934)
at org.apache.struts.taglib.logic.IterateTag.doStartTag(IterateTag.java:232)
at org.apache.jsp.left_jsp._jspService(left_jsp.java:95)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:337)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:595)// 作用域中已经保存了
st<SmFunctionVo> functions = functions = smFunctionImpl.getAll();

for(int i=0;i<functions.size();i++){
System.out.println(functions.get(i).getFunctionname());
System.out.println(functions.get(i).getFid());
System.out.println(functions.get(i).getTarget());
System.out.println(functions.get(i).getUrl());
System.out.println(functions.get(i).getParentid());

}
HttpSession session = request.getSession();

session.setAttribute("functions", functions);

解决方案 »

  1.   

    Cannot find bean 
    上面已经说的很清楚了
      

  2.   

    错误信息上已经显示;javax.servlet.jsp.JspException: Cannot find bean [com.yeecai.vo.SmFunctionVo
    找不到bean,
    你检查一下com.yeecai.vo.SmFunctionVo,这个VO类(看你最后有Vo)是否满足javaBean的条件,
    即是:属性为private,get/set为public(至少get为public),并且注意get方法属性名首字母要大写
      

  3.   

    你先检查一下吧,往往就是这些小细节造成的
    有问题再说,关注ing!
      

  4.   

    at org.apache.jsp.left_jsp._jspService(left_jsp.java:95) 
      

  5.   

    Cannot find bean [com.yeecai.vo.SmFunctionVo@193a6a5, com.yeecai.vo.SmFunctionVo@a1a199, com.yeecai.vo.SmFunctionVo@1787144, com.yeecai.vo.SmFunctionVo@545646, com.yeecai.vo.SmFunctionVo@ec2ea8]找不到SmFunctionVo bean,检查一下配置。
      

  6.   

    at org.apache.jsp.left_jsp._jspService(left_jsp.java:95) 找到left.jsp中相对应的代码 看看是怎么回事!应该是这的问题 
      

  7.   

     
    Cannot find bean [com.yeecai.vo.SmFunctionVo@193a6a5, com.yeecai.vo.SmFunctionVo@a1a199, com.yeecai.vo.SmFunctionVo@1787144, com.yeecai.vo.SmFunctionVo@545646, com.yeecai.vo.SmFunctionVo@ec2ea8] in any scope 看这3句话就可以 了,
    com.yeecai.vo在这个包下的SmFunctionVo@a1a199 bean中有bean被你调用但是这个bean却没有找到。
    其原因很可能是你在页面上的bean笔误写错。仔细核对下你的bean是否不一致。
      

  8.   


    同意,同时检查一下是否为null
      

  9.   

    兄弟,你试试,不行再说!
    关注ing!
      

  10.   

    Cannot find bean [com.yeecai.vo.SmFunctionVo@193a6a5, com.yeecai.vo.SmFunctionVo@a1a199, com.yeecai.vo.SmFunctionVo@1787144, com.yeecai.vo.SmFunctionVo@545646, com.yeecai.vo.SmFunctionVo@ec2ea8] in any scope 
    在作用域中找不到那个bean,确定一下是否将bean存入了相应的作用域
      

  11.   




    不同观点!!

    刚开始,我以为也是 bean 没有找到。。宽泛了些,再一看:
    里头的 com.yeecai.vo.SmFunctionVo@193a6a5 表明你的 SmFunctionVo 对象已经放置到了集合中。
    那么,难道是集合没有被找到吗?如果集合没有被找到,那么也不会有这个集合的形式出现。请楼主尝试在使用 functions 时,明确指定作用域。
    比如  <c:foreach items="${session.functions}"> 
      

  12.   

    名字冲突Cannot find bean [com.yeecai.vo.SmFunctionVo@193a6a5, com.yeecai.vo.SmFunctionVo@a1a199, com.yeecai.vo.SmFunctionVo@1787144, com.yeecai.vo.SmFunctionVo@545646, com.yeecai.vo.SmFunctionVo@ec2ea8] in any scope正常的bean,没有这么长的名字的