I need to load an unknown number of files at once. I found an example, and it works for a known amount of files:
markup:
<form method="POST" enctype="multipart/form-data">
<input name="files[0]" type="file" />
<input name="files[1]" type="file" />
<input type="submit" value="Send"/>
</form>
code:
@RequestMapping(method = RequestMethod.POST)
public String savePhoto(@ModelAttribute("album") Album album, BindingResult result, SessionStatus status, MultiPartFileUploadBean file)
{
List<MultipartFile> images = file.getFiles();
for (MultipartFile photo : images) {
...
}
return "redirect:/albums/"+album.getId();
}
MultiPartFileUploadBean:
public class MultiPartFileUploadBean {
private List<MultipartFile> files;
public void setFiles(List<MultipartFile> files) {
this.files = files;}
public List<MultipartFile> getFiles() {
return files;}
}
Yes, it works, but I do not know how the user wants to upload a photo in the album. And I use:
<input name="files[]" type="file" multiple="multiple" />
I'll get a error.
Request processing failed; nested exception is java.lang.NumberFormatException: For input string: ""
I was looking for how to use multiple = "multiple", but found none. I hope for your help.