Salut je tente un upload de fichier en J2EE avec un formulaire et la balise <input type="file"...
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
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);
            }           }
ça ne marche pas apparemment tomcat ne me trouve pas une classe :
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)
et rien dans mon catalina.out
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