?
Ich hab jetzt mal FileUpload installiert und das Standardbeispiel implementiert. Trotzdem wird keine Datei hochgeladen, weil die Dateiliste die Länge 0 hat.
<form action="picturehandler" method="post" enctype="multipart/form-data">
<input type="file" />
<input type="submit" value="Datei hochladen"/>
</form>
PictureHandler.java
package requestHandler;
import javax.servlet.http.*;
import org.apache.commons.fileupload.*;
import org.apache.commons.fileupload.servlet.*;
import org.apache.commons.fileupload.disk.*;
import java.io.*;
import java.util.*;
public class PictureHandler extends HttpServlet {
static final long serialVersionUID = 6;
public void doPost( HttpServletRequest request , HttpServletResponse response ) {
FileItemFactory ff = new DiskFileItemFactory();
ServletFileUpload upload = new ServletFileUpload( ff );
if( ServletFileUpload.isMultipartContent( request ) ) {
try {
List filelist = upload.parseRequest( request );
System.out.println( "filelist.size():" + filelist.size() );
Iterator it = filelist.iterator();
while( it.hasNext() ) {
FileItem pic = (FileItem) it.next();
String filename = pic.getName();
pic.write( new File( "/User/toom/Desktop/mypic/" , filename ) );
System.out.println("Datei geschrieben...");
}
} catch ( Exception e ) { e.printStackTrace(); return; }
}
try { request.getRequestDispatcher("upload_pictures.jsp").forward( request , response ); return; } catch (Exception e) { e.printStackTrace(); }
}
}
Warum läuft es nicht, obwohl ich eine gültige Datei angegeben habe ?