Bonjour,
j'essaie de récupérer dans ma servlet un fichier transmis depuis un formulaire en POST, mais j'ai une exception comme quoi la requête n'est pas multipart/form-data or multipart/mixed stream...
le code ma servlet :
et la requête http tranmise :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 DiskFileItemFactory fileItemFactory = new DiskFileItemFactory(); fileItemFactory.setSizeThreshold(1*1024*1024); // 1 Mo fileItemFactory.setRepository(tmpDir); ServletFileUpload uploadHandler = new ServletFileUpload(fileItemFactory); try { List<FileItem> items = uploadHandler.parseRequest(req); Iterator<FileItem> itr = items.iterator(); while (itr.hasNext()) { FileItem item = (FileItem) itr.next(); if (!item.isFormField()) { BufferedReader br = new BufferedReader(new InputStreamReader(item.getInputStream())); String line; while ((line = br.readLine()) != null) rawInput += line + "\n"; inputProcessed = true; } } } catch (FileUploadException fue) { fue.printStackTrace(); out.println("error : " + fue.getMessage()); }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 POST http://127.0.0.1:8180/xxx/yyy HTTP/1.1 Host: 127.0.0.1:8180 Proxy-Connection: keep-alive Content-length: 657 Cache-Control: max-age=0 Origin: null User-Agent: Mozilla/5.0 (Windows NT 6.1) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/13.0.782.107 Safari/535.1 Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryqY68RHUZlwsOiCy9 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Accept-Encoding: gzip,deflate,sdch Accept-Language: fr-FR,fr;q=0.8,en-US;q=0.6,en;q=0.4 Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3 Cookie: JSESSIONID=8977154b495e006d0bd7896753e9 ------WebKitFormBoundaryqY68RHUZlwsOiCy9 Content-Disposition: form-data; name="monfichier"; filename="application.xml" Content-Type: text/xml <?xml version="1.0" encoding="UTF-8"?> ... ... ... ------WebKitFormBoundaryqY68RHUZlwsOiCy9--
Dans la requête http il est noté multipart/form-data, donc je ne vois pas pourquoi ça ne passe pas.
Merci d'avance pour votre aide !!!
Partager