2016-05-09 5 views
2

Ich arbeite an Code laden, wo ich nicht in der Lage bin Datei durch das Surfen als nach dem Debuggen zu laden, scheint alles in Ordnung aber immer noch null vauleKann Datei

hier immer mein Code:

<form action="upload" method="post" enctype="multipart/form-data"> 
     <hr> 
     <input type="file" name="fileToUpload"> 
     <hr> 
     <input type="submit" value="go"> 
     <hr> 
    </form> 

und Java-Code:

resp.setContentType("text/html"); 
    System.out.println("insdie Servlet to db"); 
    InputStream stream; 
    Part file = req.getPart("fileToUpload"); 
    if (file != null) { 
     System.out.println(file.getName()); 
     System.out.println(file.getSize()); 
     System.out.println(file.getContentType()); 
     stream = file.getInputStream(); 
    } else 
     System.out.println("file not loaded"); 

web.xml

<servlet> 
     <servlet-name>toDataBase</servlet-name> 
     <servlet-class>com.fromHtmlToServlet.ServletToDb</servlet-class> 
    </servlet> 
    <servlet-mapping> 
     <servlet-name>toDataBase</servlet-name> 
     <url-pattern>/upload</url-pattern> 
    </servlet-mapping> 

Edit: Der Ausgang:

INFO: Server startup in 506 ms 
insdie Servlet to db 
file not loaded 

Ich habe tun servlet.jar in Deployment Descriptor und Code auf anderen Teil in Java-Datei gehen. Also kann mir jemand sagen, was die Ursache des Problems ist? Thaks

+1

* „Ich habe zu tun servlet.jar in Deployment Descriptor“ * diese Aussage nicht eindeutig ist. Sie können keine JAR-Dateien in DD haben (die DD ist die Datei 'web.xml' selbst). Meinst du, dass du ein 'servlet.jar' in'/WEB-INF/lib' hast? Dies ist an erster Stelle absolut nicht korrekt. Entferne es sofort. Wenn Sie dies getan haben, um Kompilierungsfehler zu beheben, machen Sie alles, was Sie dort gemacht haben, rückgängig und führen Sie es erneut auf http://stackoverflow.com/q/4076601 aus. Testen Sie dann Ihr aktuelles Problem erneut. – BalusC

+0

Ich entfernte Servlet Jar und immer noch Fehler. ** Teil Datei = req.getPart ("Parameter"); "" – emotionlessbananas

+0

* Bereitstellung Null versuchte jeden möglichen Code, aber nicht funktioniert gibt es eine Möglichkeit, Dateien direkt in db zu speichern, anstatt auf Drittanbieter-Computer? – emotionlessbananas

Antwort

0

Eigentlich eine einfache Anmerkung fehlt und hier ist, ich war die Antwort

@MultipartConfig <--- was missing 
public class UploadData extends HttpServlet { 
// do your job 
}