报错是  javax.servlet.jsp.JspException: Cannot find bean row2 in any scope
jsp里写的是:
<%@ taglib uri="WEB-INF/struts-logic.tld" prefix="logic" %>
<%@ taglib uri="WEB-INF/struts-bean.tld" prefix="bean" %>
....
<logic:iterate name="a" id="row">
   <tr style="word-break:break-all">
     <bean:define id="b" name="row" />
       <logic:iterate name="b" id="row2">
  <td style="word-break:break-all" />&nbsp;<bean:write name="row2" /> </logic:iterate>
   </tr>
</logic:iterate>action里也把相应的list设到request里面了:for(int i2=0;i2<l3.size();i2++){
 List p=new ArrayList();
     for(int j2=0;j2<14+4*(mac.length);j2++){
p.add(l5.get(j2+i2*(14+4*(mac.length))));
}
    l6=p;
    a.add(l6);
}
request.setAttribute("b", l6);
request.setAttribute("a", a);

解决方案 »

  1.   

    <bean:write name="row2" /> 
    见了鬼了这能输出啥啊
      

  2.   

    好奇怪的用法,没有试过
    b属性不是list,iterator不会提示吗?
      

  3.   

    to:harston   b属性是list,其实就是在页面上打2维数组to: taoming8000(情深一往),确定连接上了数据库,debug时得到了list a和list b的长度了
      

  4.   

    to: harston(顽石),b属性是list啊~to: taoming8000(情深一往):确定连上了数据库
      

  5.   

    用struts结合jstl好了 你这样写真的很麻烦
      

  6.   

    去掉这句  <bean:define id="b" name="row" />将下面的b该成row看看!
      

  7.   

    估计是不能定义list的吧,试下,结果公布下,大家共享.
      

  8.   

    去掉以后,它表示出来的是下面的数据。并且是最后一条数据,肯定是同一条数据。
    request.setAttribute("b", l6);
      

  9.   

    我在action里面request.setAttribute("b", l6);之前有个查询也是这样做的,没问题,现在不知道为什么会报javax.servlet.jsp.JspException: Cannot find bean row2 in any scope
      

  10.   

    问题已解决,真是BT啊~~list里的字段必须是同一类型的,我全部转化为string就可以了~~for(int i2=0;i2<l3.size();i2++){
    List p=new ArrayList();
    for(int j2=0;j2<14+4*(mac.length);j2++){
    p.add(String.valueOf(l5.get(j2+i2*(14+4*(mac.length)))));
    }
    l6=p;
             a.add(l6);
    }
    request.setAttribute("a", a);
    request.setAttribute("b", l6);
      

  11.   

    首先恭喜一下,但要说明一点的是request.setAttribute("b", l6);
    这行代码应该是行冗余代码,你删除它应该也可以运行吧!