Bonjour,
je poste donc un nouveau message concerné l'upload de fichier via un formulaire. Cependant mon formulaire ne contient pas qu'un champs file.
J'arrive à uploader le fichier mais pas à récupérer en meme temps les infos des autres champs du formulaire.
Donc voici mon code:
le formulaire: (basique juste pour un exemple, histoire que je comprenne comment ca fonctionne)
Ma servlet:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 <form action="fichier.do" enctype="multipart/form-data" method="POST"> <p>Nom du fichier : <input type="text" name="nom" /></p> <input type="file" name="file1"><br> <input type="Submit" value="UploadFile"><br> </form>
En gros ma question est comment récupérer à partir de :
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
26
27
28
29
30
31
32 FileItemFactory factory = new DiskFileItemFactory(); // Create a new file upload handler ServletFileUpload upload = new ServletFileUpload(factory); System.out.println("-------Test-------------"); //DeferredFileOutputStream objet = new DeferredFileOutputStream(1, new File("test")); // Parse the request List items = upload.parseRequest(request); System.out.println("-------Test-------------"); // Process the uploaded items Iterator iter = items.iterator(); while (iter.hasNext()) { System.out.println(items.get(0)); //String ligne = (String) iter.next(); //System.out.println (ligne); FileItem item = (FileItem) iter.next(); if (!item.isFormField()) { String fieldName = item.getFieldName(); System.out.println(fieldName); String fileName = item.getName(); System.out.println(fileName); if (fileName != null) { fileName = FilenameUtils.getName(fileName); } File uploadedFile = new File ("C:\\Program Files\\Apache Software Foundation\\Tomcat 7.0\\webapps\\UploadFichier\\" + fileName); item.write(uploadedFile); } }
List items = upload.parseRequest(request);
La liste des élèments du formulaire ?
J'ai essayé une fois l'upload réaliser d'utiliser quelque chose du genre :
Mais je n'arrive pas à récupérer quoi que ce soit une fois l'upload terminé.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 Enumeration e = request.getParameterNames(); String nomFic; while (e.hasMoreElements()) { String key = e.nextElement(); if(key.equals( "nom")) { System.out.println("-----------------Fichiers"); nomFic = request.getParameter(key); } }
Merci pour vos conseils!
Partager