struts select tag with values of a array list

為{幸葍}努か 提交于 2019-11-26 17:52:26

问题


I am developing a simple struts application. In my JSP I have a dropdown list box (using s:select tag). I need to fill the values with a arraylist values in the action class. How can I do that? what changes needed in the structs.xml file for complete this?

JSP:

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

Action class:

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

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

回答1:


The error

"The requested list key 'departmentlist' could not be resolved as a collection/array/map/enumeration/iterator type. Example: people or people.{name} - [unknown location] "

means that the select tag is not able to resolve departmentlist as a collection. It is an OGNL expression which is trying to find the departmentlist in the value stack and if it not found or contains a null reference the select tag will complain. When you render the select tag make sure the list is in the value stack and is initialized. See the example here.




回答2:


Try to add get and set method for our field departmentlist,in your class Exple : in your class controller put this method for your field departmentlist :

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

public void setDepartmentlist(List<String> departmentlist){
  return this.departmentlist = departmentlist;
}


来源:https://stackoverflow.com/questions/22760673/struts-select-tag-with-values-of-a-array-list

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!