2

我正在开发一个简单的 struts 应用程序。在我的 JSP 中,我有一个下拉列表框(使用s:select标签)。我需要在动作类中用 arraylist 值填充这些值。我怎样才能做到这一点?structs.xml完成此文件需要进行哪些更改?

JSP:

<s:select name="department" label="" list="departmentlist"  headerKey="-1" headerValue="Select Department">

动作类:

private List<String> departmentlist = new ArrayList<String>();

public String xyz()
{
    departmentlist.add("aaa");
    departmentlist.add("bbb");
    departmentlist.add("ccc");
    departmentlist.add("ddd");
    return "success";
}
4

2 回答 2

2

错误

“请求的列表键 'departmentlist' 无法解析为集合/数组/地图/枚举/迭代器类型。示例:人员或人员。{name} - [未知位置]”

表示select标签无法解析departmentlist为集合。这是一个 OGNL 表达式,它试图departmentlist在值堆栈中找到 ,如果它没有找到或包含null引用,则select标签将抱怨。渲染select标签时,请确保列表位于值堆栈中并已初始化。请参阅此处的示例。

于 2014-03-31T12:19:21.023 回答
0

尝试在您的类 Exple 中为我们的字段部门列表添加获取和设置方法:在您的类控制器中将此方法用于您的字段部门列表:

public  List<String> getDepartmentlist(){
  return this.departmentlist();
}

public void setDepartmentlist(List<String> departmentlist){
  return this.departmentlist = departmentlist;
}
于 2019-03-17T22:54:51.560 回答