List of usage examples for org.apache.commons.fileupload.servlet ServletFileUpload ServletFileUpload
public ServletFileUpload(FileItemFactory fileItemFactory)
FileItem
instances. From source file:controllers.FrameworkController.java
private void adicionarOuEditarFramework() throws IOException { String nome, genero, paginaOficial, id, descricao, caminhoLogo; int idLinguagem = -1; genero = nome = paginaOficial = descricao = id = caminhoLogo = ""; File file;/*from ww w . ja v a 2 s.co m*/ int maxFileSize = 5000 * 1024; int maxMemSize = 5000 * 1024; ServletContext context = getServletContext(); String filePath = context.getInitParameter("file-upload"); String contentType = request.getContentType(); if ((contentType.contains("multipart/form-data"))) { DiskFileItemFactory factory = new DiskFileItemFactory(); factory.setSizeThreshold(maxMemSize); factory.setRepository(new File("c:\\temp")); ServletFileUpload upload = new ServletFileUpload(factory); upload.setSizeMax(maxFileSize); try { List fileItems = upload.parseRequest(request); Iterator i = fileItems.iterator(); while (i.hasNext()) { FileItem fi = (FileItem) i.next(); if (!fi.isFormField()) { String fileName = fi.getName(); if (fileName.lastIndexOf("\\") >= 0) { //String name = fileName.substring(fileName.lastIndexOf("\\"), fileName.lastIndexOf(".")); String name = UUID.randomUUID() + fileName.substring(fileName.lastIndexOf(".")); file = new File(filePath + name); } else { //String name = fileName.substring(fileName.lastIndexOf("\\") + 1, fileName.lastIndexOf(".")); String name = UUID.randomUUID() + fileName.substring(fileName.lastIndexOf(".")); file = new File(filePath + name); } caminhoLogo = file.getName(); fi.write(file); } else { String campo = fi.getFieldName(); String valor = fi.getString("UTF-8"); switch (campo) { case "nome": nome = valor; break; case "genero": genero = valor; break; case "pagina_oficial": paginaOficial = valor; break; case "descricao": descricao = valor; break; case "linguagem": idLinguagem = Integer.parseInt(valor); break; case "id": id = valor; break; default: break; } } } } catch (Exception ex) { System.out.println(ex); } } boolean atualizando = !id.isEmpty(); if (atualizando) { Framework framework = dao.select(Integer.parseInt(id)); framework.setDescricao(descricao); framework.setGenero(genero); framework.setIdLinguagem(idLinguagem); framework.setNome(nome); framework.setPaginaOficial(paginaOficial); if (!caminhoLogo.isEmpty()) { File imagemAntiga = new File(filePath + framework.getCaminhoLogo()); imagemAntiga.delete(); framework.setCaminhoLogo(caminhoLogo); } dao.update(framework); } else { Framework framework = new Framework(nome, descricao, genero, paginaOficial, idLinguagem, caminhoLogo); dao.insert(framework); } response.sendRedirect("frameworks.jsp"); //response.getWriter().print("<script>window.location.href='frameworks.jsp';</script>"); }
From source file:com.exilant.exility.core.HttpUtils.java
/*** * Simplest way of handling files that are uploaded from form. Just put them * as name-value pair into service data. This is useful ONLY if the files * are reasonably small./*from www . j a va 2 s . c om*/ * * @param req * @param data * data in which */ public void simpleExtract(HttpServletRequest req, ServiceData data) { FileItemFactory factory = new DiskFileItemFactory(); ServletFileUpload upload = new ServletFileUpload(factory); try { /** * ServerFileUpload still deals with raw types. we have to have * workaround that */ List<?> list = upload.parseRequest(req); if (list != null) { for (Object item : list) { if (item instanceof FileItem) { FileItem fileItem = (FileItem) item; data.addValue(fileItem.getFieldName(), fileItem.getString()); } else { Spit.out("Servlet Upload retruned an item that is not a FileItem. Ignorinig that"); } } } } catch (FileUploadException e) { Spit.out(e); data.addError("Error while parsing form data. " + e.getMessage()); } }
From source file:com.portfolio.data.attachment.ConvertCSV.java
@Override protected void doPost(HttpServletRequest request, HttpServletResponse response) { boolean isMultipart = ServletFileUpload.isMultipartContent(request); if (!isMultipart) { try {/*from www .j a va 2 s . c o m*/ request.getInputStream().close(); response.setStatus(417); response.getWriter().close(); } catch (IOException e) { e.printStackTrace(); } return; } initialize(request); response.setContentType("application/json"); JSONObject data = new JSONObject(); try { DiskFileItemFactory factory = new DiskFileItemFactory(); ServletFileUpload upload = new ServletFileUpload(factory); List<FileItem> items = upload.parseRequest(request); Iterator<FileItem> iter = items.iterator(); List<String[]> meta = new ArrayList<String[]>(); List<List<String[]>> linesData = new ArrayList<List<String[]>>(); while (iter.hasNext()) { FileItem item = iter.next(); if (item.isFormField()) { // Process regular form field (input type="text|radio|checkbox|etc", select, etc). } else { // Process form file field (input type="file"). String fieldname = item.getFieldName(); if ("uploadfile".equals(fieldname)) // name="uploadfile" { InputStreamReader isr = new InputStreamReader(item.getInputStream()); CSVReader reader = new CSVReader(isr, ';'); String[] headerLine; String[] dataLine; headerLine = reader.readNext(); if (headerLine == null) break; dataLine = reader.readNext(); if (dataLine == null) break; for (int i = 0; i < headerLine.length; ++i) { data.put(headerLine[i], dataLine[i]); } headerLine = reader.readNext(); if (headerLine == null) break; JSONArray lines = new JSONArray(); while ((dataLine = reader.readNext()) != null) { JSONObject lineInfo = new JSONObject(); for (int i = 0; i < headerLine.length; ++i) { lineInfo.put(headerLine[i], dataLine[i]); } lines.put(lineInfo); } data.put("lines", lines); isr.close(); } } } } catch (Exception e) { } PrintWriter out = null; try { out = response.getWriter(); out.print(data); } catch (IOException e) { e.printStackTrace(); } finally { if (out != null) { out.flush(); out.close(); } } }
From source file:com.carolinarollergirls.scoreboard.jetty.MediaServlet.java
protected void upload(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { try {// w w w . j a va 2s.c o m if (!ServletFileUpload.isMultipartContent(request)) { response.sendError(response.SC_BAD_REQUEST); return; } String media = null, type = null; FileItemFactory fiF = new DiskFileItemFactory(); ServletFileUpload sfU = new ServletFileUpload(fiF); List<FileItem> fileItems = new LinkedList<FileItem>(); Iterator i = sfU.parseRequest(request).iterator(); while (i.hasNext()) { FileItem item = (FileItem) i.next(); if (item.isFormField()) { if (item.getFieldName().equals("media")) media = item.getString(); else if (item.getFieldName().equals("type")) type = item.getString(); } else if (item.getName().matches(zipExtRegex)) { processZipFileItem(fiF, item, fileItems); } else if (uploadFileNameFilter.accept(null, item.getName())) { fileItems.add(item); } } if (fileItems.size() == 0) { setTextResponse(response, response.SC_BAD_REQUEST, "No files provided to upload"); return; } processFileItemList(fileItems, media, type); int len = fileItems.size(); setTextResponse(response, response.SC_OK, "Successfully uploaded " + len + " file" + (len > 1 ? "s" : "")); } catch (FileNotFoundException fnfE) { setTextResponse(response, response.SC_NOT_FOUND, fnfE.getMessage()); } catch (IllegalArgumentException iaE) { setTextResponse(response, response.SC_BAD_REQUEST, iaE.getMessage()); } catch (FileUploadException fuE) { setTextResponse(response, response.SC_INTERNAL_SERVER_ERROR, fuE.getMessage()); } }
From source file:de.fau.amos.FileUpload.java
@Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String pathInfo = request.getPathInfo(); System.out.println("called fileupload: " + pathInfo); boolean isImportProductionData = pathInfo != null && pathInfo.startsWith("/importProductionData"); boolean isImportEnergyData = pathInfo != null && pathInfo.startsWith("/importEnergyData"); if (ServletFileUpload.isMultipartContent(request)) { try {//from w w w . j av a2 s . c om List<FileItem> list = new ServletFileUpload(new DiskFileItemFactory()).parseRequest(request); for (FileItem fi : list) { if (!fi.isFormField()) { String rand = ""; for (int i = 0; i < 6; i++) { rand += (int) (Math.random() * 10); } String plantId = ""; if (isImportEnergyData || isImportProductionData) { plantId = request.getPathInfo().replace((isImportEnergyData ? "/importEnergyData" : (isImportProductionData ? "/importProductionData" : "")), ""); } if (plantId == null || plantId.length() == 0) { plantId = ""; // }else{ // plantId="_"+plantId; } String name = new File(rand + "_" + fi.getName()).getName() + (isImportEnergyData ? "_impED" + plantId : (isImportProductionData ? "_impPD" + plantId : "")); File folder = null; if (isImportEnergyData || isImportProductionData) { folder = new File(System.getProperty("userdir.location"), "import"); } else { folder = new File(System.getProperty("userdir.location"), "uploads"); } if (!folder.exists()) { folder.mkdirs(); } fi.write(new File(folder, name)); } } request.setAttribute("message", "File uploaded successfully"); } catch (Exception e) { request.setAttribute("errorMessage", "File upload failed!"); } } else { request.setAttribute("errorMessage", "Something went wrong."); } if (isImportEnergyData || isImportProductionData) { // request.setAttribute("plant",request.getPathInfo().replace("/import","")); // request.getRequestDispatcher("/intern/import.jsp").forward(request, response); response.sendRedirect(request.getContextPath() + "/intern/import.jsp"); } else { response.sendRedirect(request.getContextPath() + "/intern/funktion3.jsp"); } }
From source file:ch.zhaw.init.walj.projectmanagement.admin.properties.LogoUpload.java
@Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { isMultipart = ServletFileUpload.isMultipartContent(request); response.setContentType("text/html"); PrintWriter out = response.getWriter(); boolean small = request.getParameter("size").equals("small"); String message = ""; if (!isMultipart) { message = "<div class=\"row\">" + "<div class=\"small-12 columns\">" + "<div class=\"row\">" + "<div class=\"callout alert\">" + "<h5>Upload failed</h5>" + "</div></div>" + "</div></div>"; }/*from ww w . java 2 s . c o m*/ 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(this.getServletContext().getRealPath("/") + "img/")); // 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; if (small) { fileName = "logo_small.png"; } else { fileName = "logo.png"; } String contentType = fi.getContentType(); boolean isInMemory = fi.isInMemory(); long sizeInBytes = fi.getSize(); filePath = this.getServletContext().getRealPath("/") + "img/" + fileName; // Write the file file = new File(filePath); 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:Controller.ControllerImageCustomerIndex.java
/** * Handles the HTTP <code>POST</code> method. * * @param request servlet request//from ww w .java 2 s .c o 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 { boolean isMultipart = ServletFileUpload.isMultipartContent(request); if (!isMultipart) { } else { 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(); Hashtable params = new Hashtable(); String fileName = null; while (iter.hasNext()) { FileItem item = (FileItem) iter.next(); if (item.isFormField()) { params.put(item.getFieldName(), item.getString()); } else { try { String itemName = item.getName(); fileName = itemName.substring(itemName.lastIndexOf("\\") + 1); System.out.println("path" + fileName); String RealPath = getServletContext().getRealPath("/") + "upload\\" + fileName; System.out.println("Rpath" + RealPath); File savedFile = new File(RealPath); item.write(savedFile); String username = (String) params.get("txtusername"); String password = (String) params.get("txpassword"); String hoten = (String) params.get("txthoten"); String gioitinh = (String) params.get("txtgioitinh"); String email = (String) params.get("txtemail"); String role = "false"; Customer cus = new Customer(username, password, hoten, gioitinh, email, role, "upload\\" + fileName); CustomerDAO.ThemKhachHang(cus); RequestDispatcher rd = request.getRequestDispatcher("index.jsp"); rd.forward(request, response); } catch (Exception e) { e.printStackTrace(); } } } } }
From source file:Controller.ControllerImageCustomer.java
/** * Handles the HTTP <code>POST</code> method. * * @param request servlet request//ww 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 */ @Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { boolean isMultipart = ServletFileUpload.isMultipartContent(request); if (!isMultipart) { } else { 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(); Hashtable params = new Hashtable(); String fileName = null; while (iter.hasNext()) { FileItem item = (FileItem) iter.next(); if (item.isFormField()) { params.put(item.getFieldName(), item.getString()); } else { try { String itemName = item.getName(); fileName = itemName.substring(itemName.lastIndexOf("\\") + 1); System.out.println("path" + fileName); String RealPath = getServletContext().getRealPath("/") + "upload\\" + fileName; System.out.println("Rpath" + RealPath); File savedFile = new File(RealPath); item.write(savedFile); String username = (String) params.get("txtusername"); String password = (String) params.get("txpassword"); String hoten = (String) params.get("txthoten"); String gioitinh = (String) params.get("txtgioitinh"); String email = (String) params.get("txtemail"); String role = "false"; String Register = (String) params.get("Register"); String url = "CustomerDao.jsp"; if (Register.equals("Register")) { url = "index.jsp"; } Customer cus = new Customer(username, password, hoten, gioitinh, email, role, "upload\\" + fileName); CustomerDAO.ThemKhachHang(cus); RequestDispatcher rd = request.getRequestDispatcher(url); rd.forward(request, response); } catch (Exception e) { e.printStackTrace(); } } } } }
From source file:ai.h2o.servicebuilder.CompilePojoServlet.java
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { File tmp = null;//from ww w . jav a2s . c om try { //create temp directory tmp = createTempDirectory("compilePojo"); logger.info("tmp dir {}", tmp); // get input files List<FileItem> items = new ServletFileUpload(new DiskFileItemFactory()).parseRequest(request); List<String> pojofiles = new ArrayList<String>(); String jarfile = null; for (FileItem i : items) { String field = i.getFieldName(); String filename = i.getName(); if (filename != null && filename.length() > 0) { if (field.equals("pojo")) { pojofiles.add(filename); } if (field.equals("jar")) { jarfile = filename; } FileUtils.copyInputStreamToFile(i.getInputStream(), new File(tmp, filename)); } } if (pojofiles.isEmpty() || jarfile == null) throw new Exception("need pojofile(s) and jarfile"); // create output directory File out = new File(tmp.getPath(), "out"); boolean mkDirResult = out.mkdir(); if (!mkDirResult) throw new Exception("Can't create output directory (out)"); if (servletPath == null) throw new Exception("servletPath is null"); copyExtraFile(servletPath, "extra" + File.separator, tmp, "H2OPredictor.java", "H2OPredictor.java"); FileUtils.copyDirectoryToDirectory( new File(servletPath, "extra" + File.separator + "WEB-INF" + File.separator + "lib"), tmp); copyExtraFile(servletPath, "extra" + File.separator, new File(out, "META-INF"), "MANIFEST.txt", "MANIFEST.txt"); // Compile the pojo(s) for (String pojofile : pojofiles) { runCmd(tmp, Arrays.asList("javac", "-target", JAVA_TARGET_VERSION, "-source", JAVA_TARGET_VERSION, "-J-Xmx" + MEMORY_FOR_JAVA_PROCESSES, "-cp", jarfile + ":lib/*", "-d", "out", pojofile, "H2OPredictor.java"), "Compilation of pojo failed: " + pojofile); } // create jar result file runCmd(out, Arrays.asList("jar", "xf", tmp + File.separator + jarfile), "jar extraction of h2o-genmodel failed"); runCmd(out, Arrays.asList("jar", "xf", tmp + File.separator + "lib" + File.separator + "gson-2.6.2.jar"), "jar extraction of gson failed"); runCmd(out, Arrays.asList("jar", "cfm", tmp + File.separator + "result.jar", "META-INF" + File.separator + "MANIFEST.txt", "."), "jar creation failed"); byte[] resjar = IOUtils.toByteArray(new FileInputStream(tmp + File.separator + "result.jar")); if (resjar == null) throw new Exception("Can't create jar of compiler output"); logger.info("jar created, size {}", resjar.length); // send jar back ServletOutputStream sout = response.getOutputStream(); response.setContentType("application/octet-stream"); String outputFilename = pojofiles.get(0).replace(".java", ""); response.setHeader("Content-disposition", "attachment; filename=" + outputFilename + ".jar"); response.setContentLength(resjar.length); sout.write(resjar); sout.close(); response.setStatus(HttpServletResponse.SC_OK); } catch (Exception e) { logger.error("post failed", e); // send the error message back String message = e.getMessage(); if (message == null) message = "no message"; logger.error(message); response.getWriter().write(message); response.getWriter().write(Arrays.toString(e.getStackTrace())); response.sendError(HttpServletResponse.SC_BAD_REQUEST, e.getMessage()); } finally { // if the temp directory is still there we delete it try { if (tmp != null && tmp.exists()) FileUtils.deleteDirectory(tmp); } catch (IOException e) { logger.error("Can't delete tmp directory"); } } }
From source file:com.sketchy.server.UpgradeUploadServlet.java
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { JSONServletResult jsonServletResult = new JSONServletResult(Status.SUCCESS); try {// ww w . j a va2s . c o m boolean isMultipart = ServletFileUpload.isMultipartContent(request); if (isMultipart) { DiskFileItemFactory factory = new DiskFileItemFactory(); factory.setRepository(FileUtils.getTempDirectory()); factory.setSizeThreshold(MAX_SIZE); ServletFileUpload servletFileUpload = new ServletFileUpload(factory); List<FileItem> files = servletFileUpload.parseRequest(request); String version = ""; for (FileItem fileItem : files) { String uploadFileName = fileItem.getName(); if (StringUtils.isNotBlank(uploadFileName)) { JarInputStream jarInputStream = null; try { // check to make sure it's a Sketchy File with a Manifest File jarInputStream = new JarInputStream(fileItem.getInputStream(), true); Manifest manifest = jarInputStream.getManifest(); if (manifest == null) { throw new Exception("Invalid Upgrade File!"); } Attributes titleAttributes = manifest.getMainAttributes(); if ((titleAttributes == null) || (!StringUtils.containsIgnoreCase( titleAttributes.getValue("Implementation-Title"), "Sketchy"))) { throw new Exception("Invalid Upgrade File!"); } version = titleAttributes.getValue("Implementation-Version"); } catch (Exception e) { throw new Exception("Invalid Upgrade File!"); } finally { IOUtils.closeQuietly(jarInputStream); } // save new .jar file as "ready" fileItem.write(new File("Sketchy.jar.ready")); jsonServletResult.put("version", version); } } } } catch (Exception e) { jsonServletResult = new JSONServletResult(Status.ERROR, e.getMessage()); } response.setContentType("text/html"); response.setStatus(HttpServletResponse.SC_OK); response.getWriter().print(jsonServletResult.toJSONString()); }