日期:2014-05-18  浏览次数:20578 次

struts 实现下拉下拉列表 找不到要使用的javabean
test_1.jsp中:

<html:form   action= "/test_1 ">

      部门: <html:select   property= "department "   >
    <html:options   name= "myList "   />
                </html:select>
                <html:submit/> <html:cancel/>
</html:form>

Test_1Action.java中:
   
    List   list=       new       ArrayList();      
    list.add(new       LabelValueBean( "1111 ", "1 "));      
    list.add(new       LabelValueBean( "2222 ", "2 "));      
    request.setAttribute( "myList ",list);      

运行test_1.jsp时
error:      
        Cannot       find       bean       under       name       myList      


------解决方案--------------------
是找不到myList这个
------解决方案--------------------
<html:options name= "myList " />
就这一句?
bean的实例话呢?
------解决方案--------------------
<html:options name= "myList " />
不能找到 myList
<jsp:useBean id= "jb " scope= "page " class= "sqlserver.SqlServerBean "/>
你上面的代碼中沒有 useBean
------解决方案--------------------
看明白了 这个 <html:options name= "myList " /> 里面的NAME 属性是一个ACTIONFORM的名字 想LZ你这样使用是不可以的
------解决方案--------------------
代码实例:
在servelt中要下面片段:
java.util.List list=new java.util.ArrayList();
for(int i=0;i <10;i++)
list.add(new Bean( " "+i, "label: "+i));
request/session.setAttribute( "myList ",list);
其中Bean就是一个javaBean:
class Bean
{
private String value;
private String label;
public Bean(String value,String label)
{
this.value=value;
this.label=label;
}
public String getValue()
{
return value;
}
public String getLabel()
{
return label;
}
}

页面上:
<html:options collection= "myList " property= "value " labelProperty= "label "/>
------解决方案--------------------
<html:options name= "myList " /> 这个是查询页面数据范围内有个myList这个对象不是集合类
使用集合类应该用下面的方法:collection表示集合名称property表示集合里bean名称labelProperty表示集合里的bean的属性名称
<html:options collection= "myList " property= "value " labelProperty= "label "/>
------解决方案--------------------
属性没有用对 看你另外一个帖子 给你回答的非常漂亮
------解决方案--------------------
算了,这么多人回答,我帮顶了算了