List of usage examples for org.apache.commons.fileupload.disk DiskFileItemFactory DiskFileItemFactory
public DiskFileItemFactory(int sizeThreshold, File repository)
From source file:com.anhth12.lambda.app.serving.AbstractLambdaResource.java
protected final List<FileItem> parseMultipart(HttpServletRequest request) throws LambdaServingException { synchronized (sharedFileItemFactory) { if (sharedFileItemFactory.get() != null) { DiskFileItemFactory fileItemFactory = new DiskFileItemFactory(1 << 16, (File) servletContext.getAttribute("javax.servlet.context.tempdir")); fileItemFactory.setFileCleaningTracker(FileCleanerCleanup.getFileCleaningTracker(servletContext)); sharedFileItemFactory.set(fileItemFactory); }/*from www. j a v a 2s.com*/ } List<FileItem> fileItems; try { fileItems = new ServletFileUpload(sharedFileItemFactory.get()).parseRequest(request); } catch (FileUploadException ex) { throw new LambdaServingException(Response.Status.BAD_REQUEST, ex.getMessage()); } check(!fileItems.isEmpty(), "No parts"); return fileItems; }
From source file:com.krawler.esp.servlets.fileUploadXLS.java
/** * Processes requests for both HTTP <code>GET</code> and <code>POST</code> methods. * @param request servlet request/*from w w w. j a v a 2s . c o m*/ * @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"); PrintWriter out = response.getWriter(); JSONObject jobj = new JSONObject(); try { jobj.put("success", true); FileItemFactory factory = new DiskFileItemFactory(4096, new File("/tmp")); ServletFileUpload upload = new ServletFileUpload(factory); upload.setSizeMax(10000000); List fileItems = upload.parseRequest(request); Iterator i = fileItems.iterator(); String destinationDirectory = StorageHandler.GetDocStorePath() + "xlsfiles"; String fileName = null; while (i.hasNext()) { FileItem fi = (FileItem) i.next(); if (fi.isFormField()) continue; fileName = fi.getName(); fi.write(new File(destinationDirectory, fileName)); } POIFSFileSystem fs = new POIFSFileSystem(new FileInputStream(destinationDirectory + "/" + fileName)); HSSFWorkbook wb = new HSSFWorkbook(fs); int count = wb.getNumberOfSheets(); JSONArray jArr = new JSONArray(); for (int x = 0; x < count; x++) { JSONObject obj = new JSONObject(); obj.put("name", wb.getSheetName(x)); obj.put("index", x); jArr.put(obj); } jobj.put("file", destinationDirectory + "/" + fileName); jobj.put("data", jArr); jobj.put("msg", "Image has been successfully uploaded"); jobj.put("lsuccess", true); jobj.put("valid", true); } catch (Exception e) { Logger.getLogger(fileUploadXLS.class.getName()).log(Level.SEVERE, null, e); try { jobj.put("msg", e.getMessage()); jobj.put("lsuccess", false); jobj.put("valid", true); } catch (Exception ex) { } } finally { out.println(jobj); } }
From source file:hoot.services.ingest.MultipartSerializerTest.java
@Test @Category(UnitTest.class) public void TestserializeFGDB() throws Exception { String jobId = "123-456-789"; String wkdirpath = homeFolder + "/upload/" + jobId; File workingDir = new File(wkdirpath); FileUtils.forceMkdir(workingDir);// www. j a v a 2 s .c o m org.junit.Assert.assertTrue(workingDir.exists()); List<FileItem> fileItemsList = new ArrayList<FileItem>(); FileItemFactory factory = new DiskFileItemFactory(16, null); String textFieldName = "textField"; FileItem item = factory.createItem(textFieldName, "application/octet-stream", true, "fgdbTest.gdb/dummy1.gdbtable"); String textFieldValue = "0123456789"; byte[] testFieldValueBytes = textFieldValue.getBytes(); OutputStream os = item.getOutputStream(); os.write(testFieldValueBytes); os.close(); File out = new File(wkdirpath + "/buffer.tmp"); item.write(out); fileItemsList.add(item); org.junit.Assert.assertTrue(out.exists()); Map<String, String> uploadedFiles = new HashMap<String, String>(); Map<String, String> uploadedFilesPaths = new HashMap<String, String>(); _ms._serializeFGDB(fileItemsList, jobId, uploadedFiles, uploadedFilesPaths); org.junit.Assert.assertEquals("GDB", uploadedFiles.get("fgdbTest")); org.junit.Assert.assertEquals("fgdbTest.gdb", uploadedFilesPaths.get("fgdbTest")); File fgdbpath = new File(wkdirpath + "/fgdbTest.gdb"); org.junit.Assert.assertTrue(fgdbpath.exists()); File content = new File(wkdirpath + "/fgdbTest.gdb/dummy1.gdbtable"); org.junit.Assert.assertTrue(content.exists()); FileUtils.forceDelete(workingDir); }
From source file:com.yanzhenjie.andserver.sample.response.RequestUploadHandler.java
/** * Parse file and save./* ww w .j a va 2 s . c om*/ * * @param request request. * @param saveDirectory save directory. * @throws Exception may be. */ private void processFileUpload(HttpRequest request, File saveDirectory) throws Exception { FileItemFactory factory = new DiskFileItemFactory(1024 * 1024, saveDirectory); HttpFileUpload fileUpload = new HttpFileUpload(factory); // Set upload process listener. // fileUpload.setProgressListener(new ProgressListener(){...}); List<FileItem> fileItems = fileUpload .parseRequest(new HttpUploadContext((HttpEntityEnclosingRequest) request)); for (FileItem fileItem : fileItems) { if (!fileItem.isFormField()) { // File param. // Attribute. // fileItem.getContentType(); // fileItem.getFieldName(); // fileItem.getName(); // fileItem.getSize(); // fileItem.getString(); File uploadedFile = new File(saveDirectory, fileItem.getName()); // ? fileItem.write(uploadedFile); } else { // General param. String key = fileItem.getName(); String value = fileItem.getString(); } } }
From source file:com.orange.mmp.context.RequestContext.java
/** * Default constructor using httpServletRequest * /*from w w w .ja va 2 s.c o m*/ * @param httpServletRequest The original httpServletRequest */ @SuppressWarnings("unchecked") public RequestContext(HttpServletRequest httpServletRequest) throws MMPException { this.httpServletRequest = httpServletRequest; this.isMultipart = ServletFileUpload.isMultipartContent(httpServletRequest); if (this.isMultipart) { DiskFileItemFactory factory = new DiskFileItemFactory(MAX_UPLOAD_FILESIZE, new File(System.getProperty("java.io.tmpdir"))); servletFileUpload = new ServletFileUpload(factory); try { this.multipartItems = servletFileUpload.parseRequest(httpServletRequest); } catch (FileUploadException fue) { throw new MMPApiException("Failed to parse multipart request", fue); } } }
From source file:cn.hhh.myandroidserver.response.AndServerUploadHandler.java
/** * ??SD?/* www . j a va 2 s . c o m*/ * * @param request {@link HttpRequest}. * @param uploadDir ? * @throws Exception ??? */ private void processFileUpload(HttpRequest request, File uploadDir) throws Exception { FileItemFactory factory = new DiskFileItemFactory(1024 * 1024, uploadDir); HttpServFileUpload fileUpload = new HttpServFileUpload(factory); // ???handlerUI fileUpload.setProgressListener(new AndWebProgressListener()); List<FileItem> fileItems = fileUpload.parseRequest(new HttpServRequestContext(request)); for (FileItem fileItem : fileItems) { if (!fileItem.isFormField()) { // ? // fileItem.getContentType() File uploadedFile = new File(uploadDir, fileItem.getName()); // ? fileItem.write(uploadedFile); } } }
From source file:com.cloudera.oryx.ml.serving.als.Ingest.java
@Override @PostConstruct//from ww w.j av a 2s. com public void init() { super.init(); ServletContext context = getServletContext(); fileItemFactory = new DiskFileItemFactory(1 << 16, (File) context.getAttribute("javax.servlet.context.tempdir")); fileItemFactory.setFileCleaningTracker(FileCleanerCleanup.getFileCleaningTracker(context)); }
From source file:edu.uniminuto.servlets.GuardarDisco.java
/** * Handles the HTTP <code>POST</code> method. * * @param request servlet request/* w w w. ja v a2 s. co m*/ * @param response servlet response * @throws ServletException if a servlet-specific error occurs * @throws IOException if an I/O error occurs */ @Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String nombre = ""; long precio = 0; int anhio = 0; short genero = 1; int interprete = 1; // String nombre = getParameter(request, "nombre"); // long precio = Long.valueOf(getParameter(request, "precio")); // int anhio = Integer.valueOf(getParameter(request, "anhio")); // // int genero = Integer.valueOf(getParameter(request, "genero")); // int interprete = Integer.valueOf(getParameter(request, "interprete")); String url = ""; try { boolean isMultipart = ServletFileUpload.isMultipartContent(request); String imagen = "images/"; // Create a factory for disk-based file items DiskFileItemFactory factory = new DiskFileItemFactory(1024 * 4, new File("c;//tmp")); // Configure a repository (to ensure a secure temp location is used) ServletContext servletContext = this.getServletConfig().getServletContext(); File repository = (File) servletContext.getAttribute("javax.servlet.context.tempdir"); factory.setRepository(repository); // Create a new file upload handler ServletFileUpload upload = new ServletFileUpload(factory); // Parse the request List<FileItem> items = upload.parseRequest(request); Iterator<FileItem> iter = items.iterator(); while (iter.hasNext()) { FileItem item = iter.next(); if (item.isFormField()) { if (item.getFieldName().equals("nombre")) { nombre = item.getString(); } else if (item.getFieldName().equals("anhio")) { anhio = Integer.valueOf(item.getString()); } else if (item.getFieldName().equals("genero")) { genero = Short.valueOf(item.getString()); } else if (item.getFieldName().equals("interprete")) { interprete = Integer.valueOf(item.getString()); } else if (item.getFieldName().equals("precio")) { precio = Long.valueOf(item.getString()); } } else { String fieldName = item.getFieldName(); String fileName = item.getName(); String contentType = item.getContentType(); boolean isInMemory = item.isInMemory(); long sizeInBytes = item.getSize(); // InputStream uploadedStream = item.getInputStream(); // uploadedStream.close(); // InputStream uploadedStream = item.getInputStream(); // uploadedStream.close(); imagen = imagen + fileName; File uploadedFile = new File(RUTA + fileName); item.write(uploadedFile); // } else { // // } } } java.util.Calendar cl = java.util.Calendar.getInstance(); cl.set(anhio, 0, 0, 0, 0, 0); Disco disco = new Disco(); disco.setGenero(generoFacade.find(genero)); disco.setInterprete(interpreteFacade.find(interprete)); disco.setNombre(nombre); disco.setImagen(imagen); disco.setAnhio(cl.getTime()); discoFacade.create(disco); if (disco.getId() != null) { Discopropietario dp = new Discopropietario(); dp.setDisco(disco); dp.setPropietario((Persona) request.getSession().getAttribute("usuario")); dp.setPrecio(precio); dp.setVendido(false); dpFacade.create(dp); url = "disco?id=" + disco.getId(); } else { url = "fdisco?nombre=" + nombre + "&precio=" + precio + "&anhio=" + anhio + "&genero=" + genero + "&interprete=" + interprete; } } catch (FileUploadException ex) { Logger.getLogger(GuardarDisco.class.getName()).log(Level.SEVERE, null, ex); } catch (Exception ex) { Logger.getLogger(GuardarDisco.class.getName()).log(Level.SEVERE, null, ex); } response.sendRedirect(url); }
From source file:controller.ProductProcess.java
public String processImage(HttpServletRequest request, HttpServletResponse response) throws IOException { if (!ServletFileUpload.isMultipartContent(request)) { PrintWriter writer = response.getWriter(); writer.print("error"); return ""; }//ww w .j a v a2 s .c o m String pathh = ""; DiskFileItemFactory factory = new DiskFileItemFactory(MEMORY_THRESHOLD, new File(System.getProperty("java.io.tmpdir"))); ServletFileUpload upload = new ServletFileUpload(factory); upload.setFileSizeMax(MAX_FILE_SIZE); upload.setSizeMax(MAX_REQUEST_SIZE); String uploadPath = getServletContext().getRealPath("") + File.separator + UPLOAD_DIRECTORY; File uploadDir = new File(uploadPath); if (!uploadDir.exists()) { uploadDir.mkdir(); } try { List<FileItem> formItems = upload.parseRequest(request); if (formItems != null && formItems.size() > 0) { for (FileItem formItem : formItems) { if (!formItem.isFormField()) { String a = formItem.getName(); String fileName = new File(a).getName(); pathh = fileName; String filePath = uploadPath + File.separator + fileName; File storeFile = new File(filePath); formItem.write(storeFile); } else { String nameAttribute = formItem.getFieldName(); String valueAttribute = formItem.getString("UTF-8"); request.setAttribute(nameAttribute, valueAttribute); } } } } catch (Exception e) { e.printStackTrace(); return ""; } return pathh; }
From source file:com.acciente.commons.htmlform.Parser.java
private static Map parsePOSTMultiPart(HttpServletRequest oRequest, int iStoreFileOnDiskThresholdInBytes, File oUploadedFileStorageDir) throws FileUploadException, IOException, ParserException { Map oMultipartParams = new HashMap(); // we have multi-part content, we process it with apache-commons-fileupload ServletFileUpload oMultipartParser = new ServletFileUpload( new DiskFileItemFactory(iStoreFileOnDiskThresholdInBytes, oUploadedFileStorageDir)); List oFileItemList = oMultipartParser.parseRequest(oRequest); for (Iterator oIter = oFileItemList.iterator(); oIter.hasNext();) { FileItem oFileItem = (FileItem) oIter.next(); // we support the variable name to use the full syntax allowed in non-multipart forms // so we use parseParameterSpec() to support array and map variable syntaxes in multi-part mode Reader oParamNameReader = null; ParameterSpec oParameterSpec = null; try {//from w ww . j a va2 s .c o m oParamNameReader = new StringReader(oFileItem.getFieldName()); oParameterSpec = Parser.parseParameterSpec(oParamNameReader, oFileItem.isFormField() ? Symbols.TOKEN_VARTYPE_STRING : Symbols.TOKEN_VARTYPE_FILE); } finally { if (oParamNameReader != null) { oParamNameReader.close(); } } if (oFileItem.isFormField()) { Parser.addParameter2Form(oMultipartParams, oParameterSpec, oFileItem.getString(), false); } else { Parser.addParameter2Form(oMultipartParams, oParameterSpec, oFileItem); } } return oMultipartParams; }