Salut je tente un upload de fichier en J2EE avec un formulaire et la balise <input type="file"...
ça ne marche pas apparemment tomcat ne me trouve pas une classe :Code:
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
33
34
35
36
37
38
39
40
41
42
43
44 import java.io.File; import java.io.IOException; import java.io.PrintWriter; import java.util.Iterator; import java.util.List; import java.util.logging.Level; import java.util.logging.Logger; import javax.servlet.RequestDispatcher; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import org.apache.commons.fileupload.FileItem; import org.apache.commons.fileupload.FileUploadException; import org.apache.commons.fileupload.disk.DiskFileItemFactory; import org.apache.commons.fileupload.servlet.ServletFileUpload; [...] try { DiskFileItemFactory factory = new DiskFileItemFactory(); factory.setSizeThreshold(5000); factory.setRepository(new File("/tmp")); ServletFileUpload upload = new ServletFileUpload(factory); upload.setSizeMax(Datas.MAXSIZEPHOTOS); List items = upload.parseRequest(request); Iterator iter = items.iterator(); while (iter.hasNext()) { FileItem item = (FileItem) iter.next(); if (item.isFormField()) { } else { String fileName = item.getName(); try { item.write(new File(fileName)); } catch (Exception ex) { Logger.getLogger(Inscription2.class.getName()).log(Level.SEVERE, null, ex); } } } } catch (FileUploadException ex) { Logger.getLogger(Inscription2.class.getName()).log(Level.SEVERE, null, ex); } }
et rien dans mon catalina.outCitation:
exception
javax.servlet.ServletException: L'exécution de la servlet a lancé une exception
cause mère
java.lang.NoClassDefFoundError: org/apache/commons/io/output/DeferredFileOutputStream
org.apache.commons.fileupload.disk.DiskFileItemFactory.createItem(DiskFileItemFactory.java:199)
org.apache.commons.fileupload.FileUploadBase.parseRequest(FileUploadBase.java:361)
org.apache.commons.fileupload.servlet.ServletFileUpload.parseRequest(ServletFileUpload.java:126)
servlets.Inscription2.doPost(Inscription2.java:112)
javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
cause mère
java.lang.ClassNotFoundException: org.apache.commons.io.output.DeferredFileOutputStream
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1484)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1329)
org.apache.commons.fileupload.disk.DiskFileItemFactory.createItem(DiskFileItemFactory.java:199)
org.apache.commons.fileupload.FileUploadBase.parseRequest(FileUploadBase.java:361)
org.apache.commons.fileupload.servlet.ServletFileUpload.parseRequest(ServletFileUpload.java:126)
servlets.Inscription2.doPost(Inscription2.java:112)
javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
J'ai cherché sur google en partant de l'erreur, mais ils disent de bien ajouter le jar au projet, ce que je fais.
Merci pour votre aide