Ich habe viele Antworten auf Stackoverflow über Multipart-Datei-Upload-Problem in Spring MVC-Anwendung gesehen. Schritt für Schritt stelle ich sicher, dass ich keine Fehler wiederhole, die andere gemacht haben.Spring mvc multipart Datei-Upload
Hier ist meine Form
<form class="form-horizontal" data-toggle="validator"
id="track_existing_repair"
method="post"
action="/euo/testUpload.htm"
enctype="multipart/form-data">
...
<div class="form-group required">
<label class="control-label col-sm-4" for="proofOfPurchaseInput">Select File:</label>
<div class="col-sm-8">
<input name="proofOfPurchase"
id="proofOfPurchaseInput"
type="file"
required/>
</div>
</div>
...
</form>
In pom-Datei habe ich Abhängigkeit
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.3.2</version>
</dependency>
multipartResolver in app-servlet.xml erklärt
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<!-- max upload size in bytes -->
<property name="maxUploadSize" value="20971520" /> <!-- 20MB -->
<!-- max size of file in memory (in bytes) -->
<property name="maxInMemorySize" value="1048576" /> <!-- 1MB -->
</bean>
Methode in der Controller-Klasse zu beantragen kartiert
@RequestMapping(value = {"/testUpload"},headers = "Content-Type=multipart/form-data", method = RequestMethod.POST)
public String testUpload(
@RequestPart(value = "proofOfPurchase", required = false) MultipartFile proofOfPurchaseFile
,HttpServletRequest request
) throws InvalidFormatException, IOException {
if(proofOfPurchaseFile != null){
readFile(proofOfPurchaseFile);
}
return NAV_HOME;
}
Ich versuchte @RequestParam statt
@RequestPartOhne erforderlich = false Ich habe "Pflicht Anfrage Teil 'proofOfPurchase' ist nicht vorhanden" Antwort, so habe ich es nicht erforderlich nur, um in Anforderung im Debugger zu untersuchen
Also, wenn ich im Debugger stoppe, war ich nicht überrascht, dass Request-Objekt zeigt mir, dass die Datei empfangen und sogar in jBoss temporären Ordner gespeichert wurde.
Könnten Sie bitte darauf hinweisen, was ich konnte vermissen, dass der Frühling kann nicht die Dateien hochgeladen sehen?