我有一个包含+
和City
字段的name
个对象列表。我使用Struts2,我有一个带有select标签的jsp页面。
id
这是<s:select label="Source city"
list="cities"
name="source"/>
类
Action
public class CalculationAction extends ActionSupport {
private List<City> cities;
private DataAccessPerformer dao = new DataAccessPerformer();
private String source;
private int sourceId;
public CalculationAction() {
cities = new ArrayList<City>();
// getting cities from database
setCities(dao.getAllCities());
}
// getters and setters
}
上课
City
这样我就会初始化public class City {
private int id;
private String name;
@Override
public String toString() {
return getCityName();
}
// getters and setters
}
字段,但我无法抓取source
。
我尝试将sourceId
字段类型更改为source
,但我得到City
字段“source”的字段值无效。
我应该如何正确获取ID?
答案 0 :(得分:2)
要将id
设置为select标记的值,您应该使用其他属性
<s:select label="Source city"
list="cities"
listKey="id"
listValue="name"
name="sourceId"/>