Sto provando a caricare file multipli usando FormData e molla.Carica più file usando ajax e molla mvc
HTML:
<input type="file" name="img" multiple id="upload-files">
JS Codice:
var ajaxData = new FormData();
var files = $('#upload-files').prop('files');
for(var i=0;i<files.length;i++){
ajaxData.append('file['+i+']', files[i]);
}
ajaxData.append("file", files);
$http.post('../rest/upload', ajaxData, {
headers: {'Content-Type': undefined },
transformRequest: angular.identity
});
Primavera controller codice:
@RequestMapping(value = "/upload", produces="application/json", method = RequestMethod.POST)
@ResponseBody
public String upload(
@RequestParam ArrayList<MultipartFile> files
){
System.out.println(files.size());
return null;
}
Tuttavia, conte di file sta uscendo a 0 sulla presentazione della richiesta con più file. Usando la notazione array MultipartFile[] files
invece di ArrayList, fornisce 400, Bad Request.
Come far funzionare il controller a molla con più file? Non riesco a trovare una soluzione su altre domande SO.
Hai provato a spostare la lista in un oggetto e hai configurato CommonsMultipartResolver e InternalResourceViewResolver su spring-servlet.xml? –
Hai aggiunto encType correttamente nel pulsante di invio modulo? per esempio.