如何从Struts 2中的选定对象获取对象属性

我有一个带有nameid字段的City对象列表。 我使用Struts2,我有一个带有select标签的jsp页面。

  

这是Action

 public class CalculationAction extends ActionSupport { private List cities; private DataAccessPerformer dao = new DataAccessPerformer(); private String source; private int sourceId; public CalculationAction() { cities = new ArrayList(); // getting cities from database setCities(dao.getAllCities()); } // getters and setters } 

Cityclass

 public class City { private int id; private String name; @Override public String toString() { return getCityName(); } // getters and setters } 

通过这种方式我得到source字段初始化,但我无法获取sourceId

我试图将source字段类型更改为City ,但我得到了FieldError

字段“source”的字段值无效。

我应该如何正确获取ID?

要将id设置为select标记的值,您应该使用其他属性