请看下面:<nested:iterate id="score" name="contractForm" property="scores">
<nested:iterate id="scorelist" name="scores" property="scorelists">
<bean:write name="scorelist" property="subject"/>   //    1...   有数据
<%=scorelist.getSubject()%>   //    2...   报错,为什么
</nested:iterate>
</nested:iterate>//错误描述:
exception javax.servlet.ServletException
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:244)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1085)
org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:398)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:241)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
com.www.util.EncodingFilter.doFilter(EncodingFilter.java:17)
root cause java.lang.ThreadDeath
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1229)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1189)
java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
org.apache.log4j.spi.LoggingEvent.<init>(LoggingEvent.java:154)
org.apache.log4j.Category.forcedLog(Category.java:388)
org.apache.log4j.Category.log(Category.java:853)
org.apache.commons.logging.impl.Log4JLogger.error(Log4JLogger.java:193)
org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:412)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:497)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:476)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:464)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:511)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:295)
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)
org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1085)
org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:398)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:241)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
com.www.util.EncodingFilter.doFilter(EncodingFilter.java:17)

解决方案 »

  1.   

    scorelist没有指定type或者强制转换也可以
      

  2.   

    不是,scorelists 是 arraylist
    scorelist 是对象 ScoreList()结构是这样的:
    //以下是内层scorelists
    list scorelists=new arraylist();
    while(rs.next()){
    ScoreList scorelist=new ScoreList();
    scorelist.getSubject();
    scorelist.getSubID();
    scorelist.get...
    scorelists.add(scorelist);
    }
    //以下是外层scores
    list scores=new arraylist();
    while(rss.next()){
    Score score=new Score();
    score.getId();
    score.getScoreLists();
    scores.add(score);
    }
      

  3.   

    scorelists.get(0).getSubject()当然错了
    ((ScoreList)scorelists.get(0)).getSubject()
      

  4.   

    还是有问题:
    <%=((ScoreList)scorelist).getSubject()%> 
    jsp报错如下:
    type Exception report
    message 
    description The server encountered an internal error () that prevented it from fulfilling this request.
    exception org.apache.jasper.JasperException: Unable to compile class for JSP
    An error occurred at line: 141 in the jsp file: /contract/OpenAccountWpmsUserQuery.jsp
    Generated servlet error:
    E:\Tomcat_5.0\work\Catalina\localhost\Misumi\org\apache\jsp\contract\OpenAccountWpmsUserQuery_jsp.java:412: cannot find symbol
    symbol  : class AccountWpmsUserUnit
    location: class org.apache.jsp.contract.OpenAccountWpmsUserQuery_jsp
                      out.print(((AccountWpmsUserUnit)accountWpmsUserUnit).getCreatDateStr());
                                  ^
    1 error<%=scorelist.getSubject()%> 
    jsp报错如下:
    type Exception report
    message 
    description The server encountered an internal error () that prevented it from fulfilling this request.
    exception org.apache.jasper.JasperException: Unable to compile class for JSP
    An error occurred at line: 141 in the jsp file: /contract/OpenAccountWpmsUserQuery.jsp
    Generated servlet error:
    E:\Tomcat_5.0\work\Catalina\localhost\Misumi\org\apache\jsp\contract\OpenAccountWpmsUserQuery_jsp.java:412: cannot find symbol
    symbol  : method getCreatDateStr()
    location: class java.lang.Object
                      out.print(accountWpmsUserUnit.getCreatDateStr());
                                                   ^
    1 error
      

  5.   

    很抱歉,楼上的帖子乱了,我整理了一下,重新发一下:还是有问题: 
    <%=((ScoreList)scorelist).getSubject()%> 
    jsp报错如下: 
    type Exception report 
    message 
    description The server encountered an internal error () that prevented it from fulfilling this request. 
    exception org.apache.jasper.JasperException: Unable to compile class for JSP 
    An error occurred at line: 141 in the jsp file: /contract/scores.jsp 
    Generated servlet error: 
    E:\Tomcat_5.0\work\Catalina\localhost\www\org\apache\jsp\contract\scores_jsp.java:412: cannot find symbol 
    symbol  : class ScoreList 
    location: class org.apache.jsp.contract.scores_jsp 
                      out.print(((ScoreList)scorelist).getSubject()); 
                                  ^ 
    1 error <%=scorelist.getSubject()%> 
    jsp报错如下: 
    type Exception report 
    message 
    description The server encountered an internal error () that prevented it from fulfilling this request. 
    exception org.apache.jasper.JasperException: Unable to compile class for JSP 
    An error occurred at line: 141 in the jsp file: /contract/scores.jsp 
    Generated servlet error: 
    E:\Tomcat_5.0\work\Catalina\localhost\www\org\apache\jsp\contract\scores_jsp.java:412: cannot find symbol 
    symbol  : method getSubject()
    location: class java.lang.Object 
                      out.print(scorelist.getSubject()); 
                                         ^ 
    1 error 
      

  6.   

    楼主java要好好练练,不要用开发工具,多用文本编辑器练练手错误都说的很明显class没找到,就是没有import类
    Object的method没找到,就要转换类