I'm using the apache commons fileupload stream api. But the FileItemIterator FileItemIterator iter = upload.getItemIterator(request);
returns false in its hasNext() iter.hasNext()
What is wrong with this?
The code and the web part is as follows:
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException { /** * Apache commons file upload method will be used */ // Check that we have a file upload request boolean isMultipart = ServletFileUpload.isMultipartContent(request); if (isMultipart) { try { // Create a new file upload handler ServletFileUpload upload = new ServletFileUpload(); // Parse the request FileItemIterator iter = upload.getItemIterator(request); while (iter.hasNext()) { FileItemStream item = iter.next(); String name = item.getFieldName(); InputStream stream = item.openStream(); if (item.isFormField()) { System.out.println("Form field " + name + " with value " + Streams.asString(stream) + " detected."); } else { System.out.println("File field " + name + " with file name " + item.getName() + " detected."); // Process the input stream //... } } } catch (FileUploadException ex) { Logger.getLogger(ResourceUploadServlet.class.getName()).log(Level.SEVERE, null, ex); } }
jsp page is as follows:
<form action="AServlet" method="POST" enctype="multipart/form-data"> <input type="file" name="Content" /> Description : <input type="text" name="Description" /> <input type="submit" value="Submit" /> </form>
Best,