【发布时间】:2012-04-10 11:51:06
【问题描述】:
我是 Spring 新手,目前我正在努力解决获得多部分表单提交/验证场景所需的许多部分,并在视图中显示错误蜂鸣。
这是我目前拥有的文件:
resourceupload.jsp :显示上传文件的表单的视图。
<form:form method="post" action="resource/upload" enctype="mutlipart/form-data">
<input name="name" type="text"/>
<input name="file" type="file" />
<input type="submit"/>
<form:errors path="file" cssClass="errors"/>
</form>
resourceuploadcontroller.java :处理表单提交的控制器,并且(不成功)尝试将文件验证错误发布回视图:
@RequestMapping(method = RequestMethod.POST)
public String handleFormUpload( @RequestParam("file") MultipartFile file , @RequestParam("name") String name,Object command, Errors validationErrors){
..perform some stuff with the file content, checking things in the database, etc...
.. calling validationErrors.reject("file","the error") everytime something goes wrong...
return "redirect:upload"; // redirect to the form, that should display the error messages
现在,显然这种方法有问题:
1/ 我必须在validationErrors 参数之前添加一个虚拟的“命令”对象,否则spring 会给我一个错误。这似乎不太对。
2/ 添加该参数后,重定向不会将错误传递给视图。我尝试在控制器的开头使用@SessionAttribute("file"),但没有任何运气。
如果有人可以提供帮助...我已经查看了 @ResponseBody 注释,但这似乎不适用于视图..
【问题讨论】:
标签: validation spring-mvc multipartform-data