I have a file uploading sevlet, and the UI on my JSP.
<form method="post" action="mygeco" enctype="multipart/form-data" style="position: absolute; left: 30%; bottom: 2%;"> <input type="file" name="dataFile" id="fileChooser" /> <input type="submit" value="Upload" multiple="multiple" /> </form>
The file uploading is done on my dopost method, and I have other code in mind for my doget() method so, when the user presses upload button on my jsp page I want the uploading to happen in background while the user stays on the jsp page and return an alert when the uploading is done, how do I do this?
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub boolean isMultipart = ServletFileUpload.isMultipartContent(request); response.setContentType("text/html"); if (isMultipart) { // Create a factory for disk-based file items FileItemFactory factory = new DiskFileItemFactory(); // Create a new file upload handler ServletFileUpload upload = new ServletFileUpload(factory); try { // Parse the request List items = upload.parseRequest(request); Iterator iterator = items.iterator(); System.out.println("starting saver"); while (iterator.hasNext()) { FileItem item = (FileItem) iterator.next(); if (!item.isFormField()) { String fileName = item.getName(); String root = getServletContext().getRealPath("/"); File path = new File("/u/poolla/workspace/FirstServlet/"); if (!path.exists()) { boolean status = path.mkdirs(); } File uploadedFile = new File(path + "/" + fileName); System.out.println(uploadedFile.getAbsolutePath()); if(fileName!="") item.write(uploadedFile); else System.out.println("file not found"); System.out.println("<h1>File Uploaded Successfully....:-)</h1>"); } else { String abc = item.getString(); System.out.println("<br><br><h1>"+abc+"</h1><br><br>"); } } } catch (FileUploadException e) { System.out.println(e); } catch (Exception e) { System.out.println(e); } } else { System.out.println("Not Multipart"); } } }