Problem mit Spring FileUpload

Ich habe die folgende code-block, das ist der Umgang mit meinem Datei-upload von einem Foto, dass ich mit meiner Spring MVC web-Anwendung. Ich bin mit Spring MVC CommonsMultipartFileResolver zu handhaben Datei-uploads.

if(model.getPhoto() != null){
    if(!model.getPhoto().isEmpty()){
        MultipartFile file = model.getPhoto();
        String fileName = file.getOriginalFilename();
        String filePath = baseDirectory + fileName;
        FileOutputStream fos = new FileOutputStream(filePath);
         try 
         {
            fos.write(file.getBytes());
            agentProfile.setPhotoUri(fileName);
         } 
         catch (IllegalStateException e) 
         {
            System.out.println(e);

         }
         finally   
         {
             fos.close();
         }
    }
}

In meinem app-servlet.xml Datei habe ich folgenden code zum konfigurieren der MultipartFile resolver bean.

 <bean id="multipartResolver"   class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
 </bean>

Ich bin erleben einige zufällige Probleme, wenn ich Fotos hochladen.

1)Wenn gehe ich zum hochladen von einem kleineren Foto, etwa 3 kb oder so, Es wird erfolgreich hochgeladen wurden.

2)Wenn gehe ich zum hochladen von einem etwas größeren Foto, wird es erstellt die Datei im Verzeichnis, aber mit einer Größe von 0 bytes und gibt die folgende Fehlermeldung.

 java.lang.IllegalStateException: File has been moved - cannot be read again
org.springframework.web.multipart.commons.CommonsMultipartFile.getBytes(CommonsMultipartFile.java:112)
com.mmz.admin.mvc.controller.AddAgentController.processFinish(AddAgentController.java:145)
org.springframework.web.servlet.mvc.AbstractWizardFormController.validatePagesAndFinish(AbstractWizardFormController.java:642)
org.springframework.web.servlet.mvc.AbstractWizardFormController.processFormSubmission(AbstractWizardFormController.java:492)
org.springframework.web.servlet.mvc.AbstractFormController.handleRequestInternal(AbstractFormController.java:265)
org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:153)
org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:48)
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:874)
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:808)
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:476)
org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:441)
javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

Ich habe versucht ein paar verschiedene Optionen zu konfigurieren, die Multipart resolver wie das zu handhaben ist eine CommonsMultipartFile - Objekt im Gegensatz zu einem einfachen MultipartFile - Objekt, aber nichts änderte sich.

Ich habe auch versucht, manuell konfigurieren Sie die maximale upload-Größe in der CommonsMultipartFileResolver bean mit der folgenden Eigenschaft.

 <property name="maxUploadSize" value="1024000000"/>  

nichts geändert. Ich bin nicht sicher, was die CommonsMultipartResolver standardmäßig so weit wie Größe der Datei, die hochgeladen werden können, aber das ist nicht meine Frage.

Mir wurde gesagt, dass das problem, das ich erlebt, die aufgrund eines Problems in der Multipart-parser/handler, dass der Frühling mit. Ich hatte den letzten post über das gleiche problem, und da neue Informationen gefunden, wollte umbuchen mit den neuen Informationen. Die alte post finden Sie unter CommonsMultipartFileResolver Problem

Ich das Gefühl, dass ich habe fast jede Ressource im internet finden Sie zusätzliche Dokumentation, aber nicht in der Lage bin, um das problem herauszufinden.

Bitte helfen Sie mir herauszufinden, was ist Los mit diesem, und wenn es eine bessere, einfacher Lösung um vielleicht den explorer die Optionen, aber ich würde lieber bleiben mit meiner aktuellen Methode, wenn ich eine Lösung finden können.

BEARBEITEN
Hinweis - ich habe experimentiert mit der unterschiedlichen Größe, Fotos hochladen, und ich glaube, dass die Grenze, ist es mir erlaubt, der upload ist etwa 10Kb. Etwas größer als 10Kb ist, wodurch es zu brechen und gib mir den oben genannten Fehler.

Schreibe einen Kommentar