List of usage examples for org.apache.commons.fileupload.servlet ServletFileUpload ServletFileUpload
public ServletFileUpload(FileItemFactory fileItemFactory)
FileItem
instances. From source file:com.openhr.company.UploadCompLicenseFile.java
@Override public ActionForward execute(ActionMapping map, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { // checks if the request actually contains upload file if (!ServletFileUpload.isMultipartContent(request)) { PrintWriter writer = response.getWriter(); writer.println("Request does not contain upload data"); writer.flush();/*from www . j a v a2 s. co m*/ return map.findForward("HRHome"); } // configures upload settings DiskFileItemFactory factory = new DiskFileItemFactory(); factory.setSizeThreshold(THRESHOLD_SIZE); factory.setRepository(new File(System.getProperty("java.io.tmpdir"))); ServletFileUpload upload = new ServletFileUpload(factory); upload.setSizeMax(MAX_REQUEST_SIZE); // constructs the directory path to store upload file String uploadPath = UPLOAD_DIRECTORY; // creates the directory if it does not exist File uploadDir = new File(uploadPath); if (!uploadDir.exists()) { uploadDir.mkdir(); } try { // parses the request's content to extract file data List formItems = upload.parseRequest(request); Iterator iter = formItems.iterator(); // iterates over form's fields while (iter.hasNext()) { FileItem item = (FileItem) iter.next(); // processes only fields that are not form fields if (!item.isFormField()) { String fileName = new File(item.getName()).getName(); String filePath = uploadPath + File.separator + fileName; File storeFile = new File(filePath); // saves the file on disk item.write(storeFile); // Read the file object contents and parse it and store it in the repos FileInputStream fstream = new FileInputStream(storeFile); DataInputStream in = new DataInputStream(fstream); BufferedReader br = new BufferedReader(new InputStreamReader(in)); String strLine; //Read File Line By Line while ((strLine = br.readLine()) != null) { System.out.print("Processing line - " + strLine); String[] lineColumns = strLine.split(COMMA); if (lineColumns.length < 8) { br.close(); in.close(); fstream.close(); throw new Exception("The required columns are missing in the line - " + strLine); } // Format is - CompID,CompName,Branch,Address,From,To,LicenseKey,FinStartMonth String companyId = lineColumns[0]; String companyName = lineColumns[1]; String branchName = lineColumns[2]; String address = lineColumns[3]; String fromDateStr = lineColumns[4]; String toDateStr = lineColumns[5]; String licenseKey = lineColumns[6]; String finStartMonthStr = lineColumns[7]; Date fromDate = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss", Locale.ENGLISH) .parse(fromDateStr); Date toDate = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss", Locale.ENGLISH).parse(toDateStr); address = address.replace(";", ","); List<Company> eComp = CompanyFactory.findByName(companyName); if (eComp == null || eComp.isEmpty()) { Company company = new Company(); company.setCompanyId(companyId); company.setName(companyName); company.setFystart(Integer.parseInt(finStartMonthStr)); Branch branch = new Branch(); branch.setAddress(address); branch.setCompanyId(company); branch.setName(branchName); Licenses license = new Licenses(); license.setActive(1); license.setCompanyId(company); license.setFromdate(fromDate); license.setTodate(toDate); license.formLicenseKey(); System.out.println("License key formed - " + license.getLicensekey()); System.out.println("License key given - " + licenseKey); if (license.getLicensekey().equalsIgnoreCase(licenseKey)) { CompanyFactory.insert(company); BranchFactory.insert(branch); LicenseFactory.insert(license); } else { br.close(); in.close(); fstream.close(); throw new Exception("License is tampared. Contact Support."); } } else { // Company is present, so update it. Company company = eComp.get(0); List<Licenses> licenses = LicenseFactory.findByCompanyId(company.getId()); Licenses newLicense = new Licenses(); newLicense.setActive(1); newLicense.setCompanyId(company); newLicense.setFromdate(fromDate); newLicense.setTodate(toDate); newLicense.formLicenseKey(); System.out.println("License key formed - " + newLicense.getLicensekey()); System.out.println("License key given - " + licenseKey); if (newLicense.getLicensekey().equalsIgnoreCase(licenseKey)) { for (Licenses lic : licenses) { if (lic.getActive().compareTo(1) == 0) { lic.setActive(0); LicenseFactory.update(lic); } } LicenseFactory.insert(newLicense); } else { br.close(); in.close(); fstream.close(); throw new Exception("License is tampared. Contact Support."); } } } //Close the input stream br.close(); in.close(); fstream.close(); } } System.out.println("Upload has been done successfully!"); } catch (Exception ex) { System.out.println("There was an error: " + ex.getMessage()); ex.printStackTrace(); } return map.findForward("CompLicHome"); }
From source file:com.fatih.edu.tr.NewTaskServlet.java
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // Check that we have a file upload request boolean isMultipart = ServletFileUpload.isMultipartContent(request); if (!isMultipart) { return;/* w w w .ja va2 s . c o m*/ } // Create a factory for disk-based file items DiskFileItemFactory factory = new DiskFileItemFactory(); // Sets the size threshold beyond which files are written directly to // disk. factory.setSizeThreshold(MAX_MEMORY_SIZE); // Sets the directory used to temporarily store files that are larger // than the configured size threshold. We use temporary directory for // java factory.setRepository(new File(System.getProperty("java.io.tmpdir"))); // constructs the folder where uploaded file will be stored String uploadFolder = getServletContext().getRealPath("") + File.separator + DATA_DIRECTORY; // Create a new file upload handler ServletFileUpload upload = new ServletFileUpload(factory); // Set overall request size constraint upload.setSizeMax(MAX_REQUEST_SIZE); TaskDao taskDao = new TaskDao(); String title = ""; String description = ""; String due_date = ""; String fileName = ""; String filePath = ""; //taskDao.addTask(title, description, due_date, "testfile","testdizi",1); try { // Parse the request List items = upload.parseRequest(request); Iterator iter = items.iterator(); while (iter.hasNext()) { FileItem item = (FileItem) iter.next(); if (!item.isFormField()) { fileName = new File(item.getName()).getName(); filePath = uploadFolder + File.separator + fileName; File uploadedFile = new File(filePath); System.out.println(filePath); item.write(uploadedFile); } else { String fieldname = item.getFieldName(); String fieldvalue = item.getString(); if (fieldname.equals("title")) { title = item.getString(); } else if (fieldname.equals("description")) { description = item.getString(); } else if (fieldname.equals("due_date")) { due_date = item.getString(); } else { System.out.println("Something goes wrong in form"); } } } taskDao.addTask(title, description, due_date, fileName, filePath, 1); // displays done.jsp page after upload finished getServletContext().getRequestDispatcher("/done.jsp").forward(request, response); } catch (FileUploadException ex) { throw new ServletException(ex); } catch (Exception ex) { throw new ServletException(ex); } }
From source file:com.bmth.MyServlet.RegisterServlet.java
protected void processRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("application/json"); boolean isMultipart = ServletFileUpload.isMultipartContent(request); Account account = new Account(); // process only if it is multipart content String username = "1"; 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 {/* ww w.j a v a 2s .c o m*/ // Parse the request List<FileItem> multiparts = upload.parseRequest(request); for (FileItem item : multiparts) { if (!item.isFormField()) { String fileName = UPLOAD_DIRECTORY + File.separator + username; File file = new File(fileName); item.write(file); account.setAvatarUrl("http://localhost:8080/Avatar/" + file.getName()); } else { String fieldName = item.getFieldName(); if (fieldName.equals("firstname")) { account.setFullName(item.getString()); } if (fieldName.equals("user_name")) { username = item.getString(); account.setUsername(username); } if (fieldName.equals("nickname")) { account.setNickName(item.getString()); } if (fieldName.equals("user_password")) { account.setPassword(item.getString()); } if (fieldName.equals("user_email")) { account.setEmail(item.getString()); } if (fieldName.equals("sex")) { int gender = item.getString().equals("male") ? 1 : 0; account.setGender(gender); } if (fieldName.equals("date")) { String date = item.getString(); String[] dates = date.split("-"); Calendar cal = Calendar.getInstance(); cal.set(Calendar.YEAR, Integer.parseInt(dates[0])); cal.set(Calendar.MONTH, Integer.parseInt(dates[1])); cal.set(Calendar.DAY_OF_MONTH, Integer.parseInt(dates[2])); Date birtday = new Date(cal.getTimeInMillis()); account.setBirthDay(birtday); } if (fieldName.equals("address")) { account.setAddress(item.getString()); } } } } catch (Exception e) { e.printStackTrace(); } } account.setPhoneNumber("01698662215"); Register re = new Register(); boolean check = re.AddUser(account); String json; if (check) { Account account1 = re.getAccountbyUsername(username); json = "{\"userId\":" + account1.getUserId() + "}"; } else { json = "{\"userId\": 0}"; } response.getWriter().write(json); }
From source file:adminpackage.adminview.ProductAddition.java
protected void processRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException, Exception { response.setContentType("text/plain;charset=UTF-8"); DiskFileItemFactory factory = new DiskFileItemFactory(); ServletFileUpload upload = new ServletFileUpload(factory); AdminViewProduct product = new AdminViewProduct(); List<FileItem> items = upload.parseRequest(request); Iterator itr = items.iterator(); String value = "defa"; String url = ""; while (itr.hasNext()) { FileItem item = (FileItem) itr.next(); if (item.isFormField()) { String name = item.getFieldName(); value = item.getString();/*from w w w.j a v a 2 s . co m*/ switch (name) { case "pname": product.setName(value); break; case "quantity": product.setQuantity(Integer.parseInt(value)); break; case "author": product.setAuthor(value); break; case "isbn": product.setISBN(Long.parseLong(value)); break; case "description": product.setDescription(value); break; case "category": product.setCategory(value); break; case "price": product.setPrice(Integer.parseInt(value)); break; } } else { //System.out.println(context.getRealPath("/pages/images/").replaceAll("\\\\target\\\\MavenOnlineShoping-1.0-SNAPSHOT", "\\\\src\\\\main\\\\webapp") + item.getName()); //url = context.getRealPath("/pages/images/").replaceAll("\\\\target\\\\MavenOnlineShoping-1.0-SNAPSHOT", "\\\\src\\\\main\\\\webapp") + item.getName(); UUID idOne = UUID.randomUUID(); product.setImage(idOne.toString() + item.getName().substring(item.getName().length() - 4)); item.write(new File(context.getRealPath("/pages/images/") .replaceAll("\\\\target\\\\MavenOnlineShoping-1.0-SNAPSHOT", "\\\\src\\\\main\\\\webapp") + idOne.toString() + item.getName().substring(item.getName().length() - 4))); } } PrintWriter out = response.getWriter(); if (adminFacadeHandler.addBook(product)) { out.print("true"); } else { //out.println("false"); out.print("false"); } }
From source file:edu.xtec.colex.utils.ParseMultipart.java
/** * Creates a new instance of ParseMultipart with a given HttpServletRequest * @param requestIn the HttpServletRequest to parse *///w w w .ja v a 2s . c o m public ParseMultipart(HttpServletRequest requestIn) { parameters = new Hashtable(); request = requestIn; isMultipart = ServletFileUpload.isMultipartContent(new ServletRequestContext(request)); try { if (isMultipart) { DiskFileItemFactory factory = new DiskFileItemFactory(); // Configure the factory here, if desired. ServletFileUpload upload = new ServletFileUpload(factory); upload.setHeaderEncoding("ISO-8859-1"); // Configure the uploader here, if desired. Iterator fileItems = upload.parseRequest(request).iterator(); while (fileItems.hasNext()) { FileItem fi = (FileItem) fileItems.next(); if (!fi.isFormField()) { parameters.put(fi.getFieldName(), fi); } else { parameters.put(fi.getFieldName(), fi.getString("ISO-8859-1").trim()); } } } } catch (Exception e) { System.out.println(e); } }
From source file:io.agi.framework.coordination.http.HttpImportHandler.java
@Override public void handle(HttpExchange t) throws IOException { int status = 400; String response = ""; //for(Map.Entry<String, List<String> > header : t.getRequestHeaders().entrySet()) { // System.out.println(header.getKey() + ": " + header.getValue().get(0)); //}//from w ww .ja v a2s .com // Based on accepted answer: http://stackoverflow.com/questions/33732110/file-upload-using-httphandler DiskFileItemFactory d = new DiskFileItemFactory(); try { ServletFileUpload up = new ServletFileUpload(d); List<FileItem> result = up.parseRequest(new RequestContext() { @Override public String getCharacterEncoding() { return "UTF-8"; } @Override public int getContentLength() { return 0; //tested to work with 0 as return } @Override public String getContentType() { return t.getRequestHeaders().getFirst("Content-type"); } @Override public InputStream getInputStream() throws IOException { return t.getRequestBody(); } }); for (FileItem fi : result) { //System.out.println( "File-Item: " + fi.getFieldName() + " = " + fi.getName() ); String value = fi.getString(); if (value == null) { continue; } //System.out.print( value ); String fieldName = fi.getFieldName(); if (fieldName.equalsIgnoreCase("entity-file")) { PersistenceUtil.ImportEntities(value); status = 200; response = response + "Imported Entities from: " + fi.getName() + "\n"; _logger.info("Import: entities file: " + fi.getName()); } else if (fieldName.equalsIgnoreCase("data-file")) { DataRefUtil.ImportData(value); status = 200; response = response + "Imported Data from: " + fi.getName() + "\n"; _logger.info("Import: data file: " + fi.getName()); } } } catch (Exception e) { _logger.error("Unable to import entities/data."); _logger.error(e.toString(), e); } HttpUtil.SendResponse(t, status, response); }
From source file:com.seer.datacruncher.services.HttpFileUpload.java
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html"); PrintWriter out = response.getWriter(); try {//from w w w . j av a 2s . co m FileItemFactory factory = new DiskFileItemFactory(); ServletFileUpload upload = new ServletFileUpload(factory); List items = null; try { items = upload.parseRequest(request); } catch (Exception e) { e.printStackTrace(); } Iterator iter = items.iterator(); while (iter.hasNext()) { FileItem item = (FileItem) iter.next(); if (!item.isFormField()) { String fileName = item.getName(); String str = getServletContext().getRealPath("/"); fileName = fileName.substring(0, fileName.indexOf(".")) + ".txt"; File uploadedFile = new File(str + fileName); item.write(uploadedFile); out.println("<Status>Success: File has been uploaded at " + uploadedFile.getAbsolutePath() + "</Status>"); out.flush(); out.close(); return; } } } catch (Exception ex) { ex.printStackTrace(); } out.println("<Status>Failure</Status>"); out.flush(); out.close(); }
From source file:com.official.wears.site.UploadServlet.java
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, java.io.IOException { // Check that we have a file upload request isMultipart = ServletFileUpload.isMultipartContent(request); response.setContentType("text/html"); java.io.PrintWriter out = response.getWriter(); if (!isMultipart) { out.println("<html>"); out.println("<head>"); out.println("<title>Servlet upload</title>"); out.println("</head>"); out.println("<body>"); out.println("<p>No file uploaded</p>"); out.println("</body>"); out.println("</html>"); return;//ww w .j av a 2s . com } DiskFileItemFactory factory = new DiskFileItemFactory(); // maximum size that will be stored in memory factory.setSizeThreshold(maxMemSize); // Location to save data that is larger than maxMemSize. factory.setRepository(new File("c:\\temp")); // Create a new file upload handler ServletFileUpload upload = new ServletFileUpload(factory); // maximum file size to be uploaded. upload.setSizeMax(maxFileSize); try { // Parse the request to get file items. List fileItems = upload.parseRequest(request); // Process the uploaded file items Iterator i = fileItems.iterator(); out.println("<html>"); out.println("<head>"); out.println("<title>Servlet upload</title>"); out.println("</head>"); out.println("<body>"); while (i.hasNext()) { FileItem fi = (FileItem) i.next(); if (!fi.isFormField()) { // Get the uploaded file parameters String fieldName = fi.getFieldName(); String fileName = fi.getName(); String contentType = fi.getContentType(); boolean isInMemory = fi.isInMemory(); long sizeInBytes = fi.getSize(); // Write the file if (fileName.lastIndexOf("\\") >= 0) { file = new File(filePath + fileName.substring(fileName.lastIndexOf("\\"))); } else { file = new File(filePath + fileName.substring(fileName.lastIndexOf("\\") + 1)); } fi.write(file); out.println("Uploaded Filename: " + fileName + "<br>"); } } out.println("</body>"); out.println("</html>"); } catch (Exception ex) { System.out.println(ex); } }
From source file:com.patrolpro.servlet.UploadJasperReportServlet.java
/** * Processes requests for both HTTP <code>GET</code> and <code>POST</code> * methods.// w ww . jav a 2s. c o m * * @param request servlet request * @param response servlet response * @throws ServletException if a servlet-specific error occurs * @throws IOException if an I/O error occurs */ protected void processRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html;charset=UTF-8"); PrintWriter out = response.getWriter(); try { FileItemFactory factory = new DiskFileItemFactory(); ServletFileUpload upload = new ServletFileUpload(factory); String companyId = request.getParameter("companyId"); FileItem fileData = null; Integer mobileFormId = null; List<FileItem> fields = upload.parseRequest(request); for (int f = 0; f < fields.size(); f++) { if (fields.get(f).getFieldName().equals("file_data")) { fileData = fields.get(f); } else if (fields.get(f).getFieldName().equals("mobileFormId")) { mobileFormId = Integer.parseInt(fields.get(f).getString()); } } if (fileData == null || !fileData.getName().endsWith(".jrxml")) { out.write("{\"error\": \"Invalid file type! Please select a jrxml (Jasper Report) file!\"}"); out.flush(); } else { InputStream iStream = fileData.getInputStream(); MobileFormService mobileService = new MobileFormService(companyId); ByteArrayOutputStream bOutput = new ByteArrayOutputStream(); byte[] buffer = new byte[2048]; int bufCount = 0; while ((bufCount = iStream.read(buffer)) > -1) { bOutput.write(buffer, 0, bufCount); } bOutput.flush(); byte[] rawData = bOutput.toByteArray(); JasperReport jasperReport = JasperCompileManager.compileReport(new ByteArrayInputStream(rawData)); JRParameter[] params = jasperReport.getParameters(); HashMap<String, Class> reportParams = new HashMap<String, Class>(); for (int p = 0; p < params.length; p++) { JRParameter param = params[p]; int searchPos = -1; for (int a = 0; a < MobileForms.getReservedIdentifiers().length; a++) { if (MobileForms.getReservedIdentifiers()[a].equals(param.getName())) { searchPos = a; } } if (!param.isSystemDefined() && searchPos < 0 && !param.getName().startsWith("nfc_l_") && !param.getName().endsWith("_loc")) { reportParams.put(param.getName(), param.getValueClass()); } } ByteArrayOutputStream oStream = new ByteArrayOutputStream(); JasperCompileManager.writeReportToXmlStream(jasperReport, oStream); //JasperCompileManager.compileReportToStream(new ByteArrayInputStream(rawData), oStream); MobileForms selectedForm = mobileService.getForm(mobileFormId); selectedForm.setReportData(oStream.toByteArray()); mobileService.saveForm(selectedForm); Iterator<String> keyIterator = reportParams.keySet().iterator(); ArrayList<MobileFormData> currData = mobileService.getFormData(selectedForm.getMobileFormsId()); int numberInserted = 1; while (keyIterator.hasNext()) { String key = keyIterator.next(); boolean hasData = false; for (int d = 0; d < currData.size(); d++) { if (currData.get(d).getDataLabel().equals(key) && currData.get(d).getActive()) { hasData = true; } } if (!hasData) { MobileFormData formData = new MobileFormData(); formData.setActive(true); formData.setMobileFormsId(selectedForm.getMobileFormsId()); formData.setDataLabel(key); if (reportParams.get(key) == Date.class) { formData.setDateType(5); } else if (reportParams.get(key) == InputStream.class) { formData.setDateType(8); } else if (reportParams.get(key) == Boolean.class) { formData.setDateType(3); } else { formData.setDateType(1); } formData.setOrdering(currData.size() + numberInserted); mobileService.saveFormData(formData); numberInserted++; } } out.write("{}"); out.flush(); } } catch (JRException jr) { out.write("{\"error\": \"" + jr.getMessage().replaceAll("\n", "").replaceAll(":", "").replaceAll("\t", "") + "\"}"); out.flush(); } catch (Exception e) { out.write("{\"error\": \"Exception uploading report, " + e + "\"}"); out.flush(); } finally { out.close(); } }
From source file:es.alvsanand.webpage.web.fileupload.filter.FileUploadFilter.java
public void doFilter(ServletRequest request, ServletResponse response, FilterChain filterChain) throws IOException, ServletException { HttpServletRequest httpServletRequest = (HttpServletRequest) request; boolean isMultipart = ServletFileUpload.isMultipartContent(httpServletRequest); if (isMultipart) { logger.debug("Parsing file upload request"); MemoryFileItemFactory memoryFileItemFactory = new MemoryFileItemFactory(); if (thresholdSize != null) { memoryFileItemFactory.setSizeThreshold(Integer.valueOf(thresholdSize)); }// w w w. ja v a 2s . c om ServletFileUpload servletFileUpload = new ServletFileUpload(memoryFileItemFactory); MultipartRequest multipartRequest = new MultipartRequest(httpServletRequest, servletFileUpload); logger.debug( "File upload request parsed succesfully, continuing with filter chain with a wrapped multipart request"); filterChain.doFilter(multipartRequest, response); } else { filterChain.doFilter(request, response); } }