我有一个控制器定义为:
public void saveCustomer(@Valid @ModelAttribute("customer") Customer customer) {
// persist
}
和客户中的吸气剂:
public List<ContactInfo> getContactInfo() {
if(contactInfo != null) {
return contactInfo;
}
else {
return new ArrayList<ContactInfo>();
}
}
如果我使用 HTML 表单点击控制器,则联系信息为空。但是,如果我将吸气剂更改为
public List<ContactInfo> getContactInfo() {
return contactInfo;
}
然后联系信息被绑定并正确保存。我真的很困惑为什么会这样。
我已经检查了 Chrome,并且联系信息肯定在请求参数中,如下所示:
contactInfo[0].alias:test
contactInfo[0].email:test@test.com