我正在尝试使用Spring 3绑定嵌套对象,我遇到了问题。
JSP:
<portlet:actionURL var="formAction" />
<form:form id="add-objects-form" method="post" action="${formAction}">
<input name = "obj.a"...>
<input name = "obj.b"...>
<input type = "file" multiple="multiple" name="file"/>
</form>
表单对象:
class FormObject{
private final static Logger logger = ...
private MultipartFile file
private Obj obj
...getters and setters
}
控制器:
@RequestMapping(method = RequestMethod.POST)
public void uploadDocument(@ModelAttribute FormObject formObject, BindingResult results ) {
}
formObject
获取obj.a
和obj.b
,但file
始终为空。
答案 0 :(得分:2)
在modelAttribute="formObject"
<form:form>
还要确保没有从类中排除调试信息。如果您有,或者您不确定,请指定@ModelAttribute("formObject")
要处理文件(多部分数据),您需要指定表单的enctype:
enctype="multipart/form-data"
更新:因为您正在使用js-library进行文件上载,所以这是做什么的: