没有在任何页面容器中找到名叫data的bean

解决方案 »

  1.   

    看看你的ArrayList里的值是否存在
      

  2.   

    他的是多个List嵌套,
    怎么取值出来,用Struts。
      

  3.   

    我debug看过了,lResult里面存在多个ArrayList,这个没问题.
      

  4.   

    是不是这样?<logic:iterate id="data" name="datas" scope="???">
    但是scope又是什么呢?为request应该不对,因为我没有request.setAttribute("datas", object);这步操作.
      

  5.   

    你能把你填充list的值的代码贴出来吗?
    就是你怎么填充你的嵌套list的值.
      

  6.   

    List lResult = new ArrayList();
    List ltemp = null;
    while (rs.next()) {
        ltemp = new ArrayList(info.getShowFields().length);
        ltemp.add(rs.getString("data1"));
        ltemp.add(rs.getString("data2"));
        ltemp.add(rs.getString("data3"));
        ......
    }
    lResult.add(ltemp);
    因为sql语句是动态的,查询出的字段数也是动态的,所以我就用ArrayList嵌套
      

  7.   

    while (rs.next()) {
        ltemp = new ArrayList(info.getShowFields().length);
        ltemp.add(rs.getString("data1"));
        ltemp.add(rs.getString("data2"));
        ltemp.add(rs.getString("data3"));
        ......    lResult.add(ltemp);
    }
    不好意思,刚才写错了
      

  8.   

    tcmis(难道你忘了吗?) 不在吗?
    这样填充又问题吗?
      

  9.   

    <logic:present name="lResult" scope="request">
    <logic:iterate id="datas" name="lResult" indexId="Id">
    <TR> 
    <logic:iterate id="data" name="datas"  property="value" >
    <TD><bean:write name="data"/></TD>
    </logic:iterate>
    </TR>
    </logic:iterate>
    </logic:present>你试一下这,我测试可以,加了个property
      

  10.   

    非常谢谢wh_calm() ,
    但是不行,No getter method for property: "value" of bean: "datas".
      

  11.   

    非常感谢大家,问题解决了,不过,只是一个变通的办法,我将lResult(ArrayList)中的元素ArrayList换成了TreeMap类型的对象,然后页面上取数为:
    <logic:present name="lResult" scope="request">
    <logic:iterate id="datas" name="lResult" indexId="Id">
    <TR> 
    <logic:iterate id="data" name="datas">
    <TD><bean:write name="data" property="value"/></TD>
    </logic:iterate>
    </TR>
    </logic:iterate>
    </logic:present>
    这里特别多谢wh_calm() .