我有一个窗体,其中包含一个对象集合的嵌套字段集列表,由一个表单对象服务器端支持。字段集可以添加或删除客户端。我想提交表单而不关心命令对象中的对象索引或稀疏列表。使用Spring MVC表单提交数组字段的简单方法?
这里是我的控制器方法代码:
@PostMapping("/foobar")
public String doPost(FoobarForm form) {
//...
}
在PHP中,导轨等它很容易:
<input name="prop[]">
,它会自动填充$_POST["prop"]
所有的值。
与Spring MVC的工作,我想这些东西:
<input name="prop[]">
- 不起作用说Invalid property 'prop[]' of bean class [...]: Invalid index in property path 'prop[]'; nested exception is java.lang.NumberFormatException: For input string: ""
<input name="prop">
- 不会绑定到列表类型的bean属性,甚至是多当领域目前。<input name="prop[${i}]">
- 意味着稀疏表和索引操作,同时支持客户端和服务器端的所有麻烦。当使用强大的Web框架工作时,肯定不是正确的做法。
我想知道为什么我不能只使用属性名称中的[]
并让Spring自动创建列表?在Spring JIRA上被问到three times没有任何合理的回应。
你使用什么视图解析器? Thymeleaf,JSP? –
你需要使用SpEl('$ {prop}')。 'prop'从哪里来?显示完整的代码以获得更好的帮助 –