|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Jan 2002
Messaggi: 1024
|
[JAVA] Problema Servlet Upload File
Ho un problema.. Devo fare un upload file su tomcat 5.5.17 . Ho visto la libreria org.apache.commons.fileupload 1.21
Il codice è questo Codice:
System.out.println("Prova2 con commons "+request.toString());
System.out.println("Create a factory for disk-based file items");
FileItemFactory factory = new DiskFileItemFactory();
System.out.println("Create a new file upload handler");
ServletFileUpload upload = new ServletFileUpload(factory);
System.out.println("Parse the request");
List items = upload.parseRequest(request);
//*********************** PROBLEMA *****************
System.out.println("Item trovati = " + items.size());
Iterator itr = items.iterator();
// Ora controlliamo tutti gli item presenti
// salvando tutti i file che sono stati inviati
while (itr.hasNext()) {
FileItem item = (FileItem) itr.next();
if (!item.isFormField()) {
String Dir = realPath + "img/lav_" + numLavoro + "/";
// Creo la directory
util.Util.creaDir(Dir);
File fullFile = new File(item.getName());
File savedFile = new File(Dir, fullFile.getName());
if (!savedFile.exists()) {
item.write(savedFile);
Image img = new Image();
// setto il num di lavoro
img.setLavoro(numLavoro);
// setto il DB
img.setURL("img/lav_" + numLavoro + "/" + fullFile.getName());
img.ScriviDatiSuDB();
} else {
return -1;
}
}
}
return numLavoro;
List items = upload.parseRequest(request); non da errori, si blocca soltanto.. Non va più avanti.. AIUTO
__________________
|
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Jan 2002
Messaggi: 1024
|
up
__________________
|
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Jan 2002
Messaggi: 1024
|
non ci credo che nessuno non abbia mai fatto u upload di un file in java..
__________________
|
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Jan 2002
Messaggi: 1024
|
ho cambiato metodo ma il risultato cambia di poco
cioè adesso riscontro un errore. Codice:
file addFile.java .. .. 103: java.io.PrintStream Output = new java.io.PrintStream(fileOut); 104: 105:// metodo che mi serve dato che i dati presi sono byte di immagini 106:Output.write(data); .. .. .. GUI.addFile.doPost(addFile.java:163) javax.servlet.http.HttpServlet.service(HttpServlet.java:709) javax.servlet.http.HttpServlet.service(HttpServlet.java:802) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869) org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664) org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527) org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80) org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684) java.lang.Thread.run(Thread.java:619) se uso per esempio: Output.print("Sringa qualsiasi"); va tutto bene come inserimento di file ma ovviamente il file risulta un file di testo. VI PREGO!!!!!!!!! AIUTATEMI...
__________________
|
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Jan 2002
Messaggi: 1024
|
__________________
|
|
|
|
|
|
#6 |
|
Junior Member
Iscritto dal: Jun 2008
Messaggi: 3
|
Ma come fai l'upload del file?? con un form?
|
|
|
|
|
|
#7 |
|
Senior Member
Iscritto dal: Jan 2002
Messaggi: 1024
|
certo..
poi in action lancio la servlet.. Adesso il problema più grosso e che se lancio java.io.PrintStream Output = new java.io.PrintStream(fileOut); non va se lancio Output.print("Sringa qualsiasi"); funziona tutto.. ovviamente il file risulta di testo..
__________________
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 03:19.




















