如何在spring 中保存许多对象

@Component @Entity @Table(name="menu") @Configurable public class Menu implements Serializable{ .... @OneToMany(mappedBy="menu", fetch=FetchType.EAGER) private Set voceMenuList; public Set getVoceMenuList() { return voceMenuList; } public void setVoceMenuList(Set voceMenuList) { this.voceMenuList = voceMenuList; } ..... } 

我打印一个表单来编辑菜单,以及它的相对VoceMenu对象,这样:

 
Menu id
...... .....

但是,当我尝试保存对象菜单时,我收到此错误:

bean类[com.springgestioneerrori.model.Menu]的属性’voceMenuList [0]’无效:无法使用属性路径’voceMenuList [0]’访问大小为0的索引0的元素

索引无法访问Set的元素。 您需要添加返回包装集合的List的方法。

 @Component @Entity @Table(name="menu") @Configurable public class Menu implements Serializable{ .... @OneToMany(mappedBy="menu", fetch=FetchType.EAGER) private Set voceMenus; public Set getVoceMenus() { return voceMenus; } public void setVoceMenus(Set voceMenus) { this.voceMenus = voceMenus; } //bind to this public List getVoceMenusAsList(){ return new ArrayList(voceMenus); } ..... } 

JSP:

  Menu id
...... .....