我用的是struts1.0,然后,我的一张JSP代码中的一段:  <logic:iterate id="course" name="user" property="list" length="2" >
  <tr>
    <td><bean:write name="course" property="list"/></td>
    <td><bean:write name="course" property="list"/></td>
  </tr>
  </logic:iterate>
报错:No getter method for property list of bean course
后改为:
  <logic:iterate id="course" name="user" property="list" length="2" >
  <tr>
    <td><bean:write name="user" property="list"/></td>
    <td><bean:write name="user" property="list"/></td>
  </tr>
  </logic:iterate>
就可以了,但,我从API上看到,好像,下面的BEAN:WRITE中的NAME应该用logic:iterate中的course才对,不知道为什么?
第二
我将数据保存在一个BEAN中的Arraylist属性中,这个属性名为list,但是我只能输出一串字符串,不能像以表格的形式输出,我后来将代码改为:
  <logic:iterate id="course" name="user" property="list" length="2" >
  <tr>
    <td><bean:write name="user" property="list.get(0)"/></td>
    <td><bean:write name="user" property="list.get(1)"/></td>
  </tr>
  </logic:iterate>
后不行,报错: No getter method for property list.get(0) of bean course
我本想只输出两条信息先试一下,但这样也不行,但我在EC里调试的时候是可以输出的,我想不通是不是在JSP里,不支持JAVA中Arraylist.get()方法?
如果是知道的朋友能不能告诉我想在JSP中以表格的形式输出BEAN中Arraylist中的数据,要怎么做?

解决方案 »

  1.   

    logic就相当于for(int i=0;i<list.size();i++){
    <bean:write>中的name就相当于BeanName bean = (BeanName)list.get(i);
    property就相当与BeanName中的一个属性
    }不知道这样理解有没问题
      

  2.   

    list.get(0)
    你这样写是java的语法
    在标签中直接写属性
      

  3.   


    那属性就是list,我试过,但输出是[arg0,arg1,arg2,arg3...]这个样式的,没法把里面的各项分别放到表格中去
      

  4.   

    ArrayList里面放的是什么?
    迭代ArrayList
     
      

  5.   

    是的,我在bean里声明了一个ArrayList,然后把数据从数据库中读了出来放在了ArrayList中
      

  6.   


    第1:
      <logic:iterate id="course" name="user" property="list" length="2" >   <tr> 
        <td> <bean:write name="course" property="list"/> </td> 
        <td> <bean:write name="course" property="list"/> </td> 
      </tr> 
      </logic:iterate> 这段代码,
    首先看红色:意思是遍历"user"指定的javabean中getList()方法返回的值,将遍历出的值赋值给“course”。
    然后是蓝色:意思是输出“course”的getList()方法返回的值,“course”存储的值如上介绍,所以你要确定在“course”中有getList()方法吗、
    提示说的清楚:报错:No getter method for property list of bean course 。我猜你的"course"中没有getList()方法。第2:
     <logic:iterate id="course" name="user" property="list" length="2" > 
      <tr> 
        <td> <bean:write name="user" property="list.get(0)"/> </td> 
        <td> <bean:write name="user" property="list.get(1)"/> </td> 
      </tr> 
      </logic:iterate> 
    你可以直接改为下面的试试:
     <logic:iterate id="course" name="user" property="list" length="2" > 
      <tr> 
        <td> <bean:write name="course"/> </td> 
      </tr> 
      </logic:iterate> 
      

  7.   

    <logic:iterate id="course" name="user" property="list" length="2" > 
      <tr> 
        <td> <bean:write name="course"/> </td> 
      </tr> 
      </logic:iterate>