Я загружаю изображение с помощью form-data
с изображением с ПК клиента на Spring MVC Server.Ошибка при загрузке файла из форм-данных в Spring Server
Обновление страницы:
<!DOCTYPE html > <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>Spring MVC - Upload File</title> </head> <body> <form id="form1" method="post" action="/upload" enctype="multipart/form-data" accept-charset="utf-8"> <!-- File input --> <input name="file" id="file" type="file" /><br/> <input type="submit" value="Upload" /> </form> </body> </html>
И это Spring Controller
@RequestMapping(value = "upload", method = RequestMethod.POST) public @ResponseBody String provaUpdate(MultipartHttpServletRequest request,Principal p,HttpServletResponse response)throws IOException { String result=""; LocalFileManager mLocalFileManager = LocalFileManager.get(); Iterator<String> iterator = request.getFileNames(); while(iterator.hasNext()) { System.out.println("iterator.next()="+iterator.next()); } System.out.println("request.getFileMap().isEmpty()??"+request.getFileMap().isEmpty()); // mLocalFileManager.saveLocalData(g,g.getPicturesCount(), request.getFile("new").getInputStream()); return result; }
Так что, когда я бегу, что он просто печатает:
request.getFileMap().isEmpty()??true
Тогда нет файлов, кажется, не загружен, но если я получаю request.getInputStream()
я могу написать TXT файл, показывающий, что:
------WebKitFormBoundaryWG8vA5PuTFFxPBqK Content-Disposition: form-data; name="file"; filename="1.jpg" Content-Type: image/jpeg �� JFIF ��ICC_PROFILE 蠠 mntrRGB XYZ ٠ $ acsp �� ӭ )B9 desc D ybXYZ bTRC Ԡ dmdd ࠠ ɧXYZ h gTRC Ԡ lumi | meas //(Symbols) Long ETC, so the picture is sent !! ------WebKitFormBoundaryWG8vA5PuTFFxPBqK--
Таким образом, кажется, что изображение отправляется правильно, но MultipartHttpServletRequest
не может получить файл.
Какая у меня ошибка?
Я конфигурирование моего сервера как Java приложение, поэтому я настроен эта часть так: '@Bean общественного MultipartConfigElement multipartConfigElement() { MultiPartConfigFactory factory = new MultiPartConfigFactory(); factory.setMaxFileSize ("256 КБ"); factory.setMaxRequestSize ("256 КБ"); return factory.createMultipartConfig(); } ' –