我在页面中提取数据库中一个字段的值,代码如下
<html:select property="groupid">
<html:options collection="list"   property="groupname"  labelProperty="groupname"/>
</html:select>
我在登陆的时候,将list赋值,并放入session。在页面中有提取
List list = (List)session.getAttribute("list");
在登陆时打印出来,有值,页面中打印出来也有值。现在我打开此页面却报错。
Cannot find bean under name list
不知道那里出了错,请各位帮帮我。在线等。

解决方案 »

  1.   

    不要用list, 用Map好了, property="key"  labelProperty="value"
      

  2.   

    那你放进list的东西必须是这样的类
    class A{
       getGroupname(){}
    }A a = new A();list.add(a);这样才会在list里找到a的groupname属性
      

  3.   

    这是我的类
    public class group {
    private String groupid;
    private String groupname;
    private String grouplevel;
    private String upgroup;

    public String getGroupid() {
    return groupid;
    }
    public void setGroupid(String groupid) {
    this.groupid = groupid;
    }
    public String getGrouplevel() {
    return grouplevel;
    }
    public void setGrouplevel(String grouplevel) {
    this.grouplevel = grouplevel;
    }
    public String getGroupname() {
    return groupname;
    }
    public void setGroupname(String groupname) {
    this.groupname = groupname;
    }
    public String getUpgroup() {
    return upgroup;
    }
    public void setUpgroup(String upgroup) {
    this.upgroup = upgroup;
    }

    }
    这是把类放入list
     public List findgroup(){
         List list = new ArrayList();
         rs = null;
    if(cnn != null){
    try {
    stmt = cnn.createStatement();
    rs = stmt.executeQuery("select * from User_Group");
    //stmt.close();
    System.out.println(rs);

    while(rs.next()){
    group group = new group();
    group.setGroupid(rs.getString("GroupId"));
    group.setGroupname(rs.getString("GroupName"));
    group.setGrouplevel(rs.getString("GroupLevel"));
    group.setUpgroup(rs.getString("upGroup"));
    list.add(group);
    }
    } catch (SQLException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }
    return list;  
    }
         return list;   
        }
      

  4.   

    <html:select   property="personnelId">   
          <html:option   value="">请选择</html:option>   
          <html:options     collection="personList"   property="personId"   labelProperty="personName"/>   
      </html:select>   
      html:options自动帮你迭代personList中的内容,前提是personList是Collection类型的,而且封装的是一个包含personId,personName属性的对象   
      property显示的是value,labelProperty显示的是页面看到的内容