List of usage examples for org.apache.commons.fileupload.servlet ServletFileUpload ServletFileUpload
public ServletFileUpload(FileItemFactory fileItemFactory)
FileItem
instances. From source file:controller.CreateProduct.java
/** * Processes requests for both HTTP <code>GET</code> and <code>POST</code> * methods.// ww w . j av a 2s .co 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(); MultipartRequest mr = new MultipartRequest(request, "C:/Users/Randy/Documents/NetBeansProjects/Override/web/imagesProducts/"); try { //Clases model.business.Producto p = new model.business.Producto(); model.dal.ProductoDal productoDal = new ProductoDal(); //Se usa este Request cuando se tiene enctype="multipart/form-data" (Importar JAR) /*FileItemFactory es una interfaz para crear FileItem*/ FileItemFactory file_factory = new DiskFileItemFactory(); /*ServletFileUpload esta clase convierte los input file a FileItem*/ ServletFileUpload servlet_up = new ServletFileUpload(file_factory); /*sacando los FileItem del ServletFileUpload en una lista */ List items = servlet_up.parseRequest(request); for (int i = 0; i < items.size(); i++) { /*FileItem representa un archivo en memoria que puede ser pasado al disco duro*/ FileItem item = (FileItem) items.get(i); /*item.isFormField() false=input file; true=text field*/ if (!item.isFormField()) { /*cual sera la ruta al archivo en el servidor*/ File archivo_server = new File( "C:/Users/Randy/Documents/NetBeansProjects/Override/web/imagesProducts/" + item.getName()); /*y lo escribimos en el servido*/ item.write(archivo_server); } } //Set p.setIdProducto(Integer.parseInt(mr.getParameter("txt_id_producto"))); p.setNombreProducto(mr.getParameter("txt_nombre_producto")); p.setPrecioUnitario(Integer.parseInt(mr.getParameter("txt_precio"))); p.setStock(Integer.parseInt(mr.getParameter("txt_stock"))); p.setDescripcion(mr.getParameter("txt_descripcion")); p.getTipoProducto().setIdTipoProducto(Integer.parseInt(mr.getParameter("ddl_lista_tipo_producto"))); p.getMarca().setIdMarca(Integer.parseInt(mr.getParameter("ddl_marca_producto"))); //Recoge el NOMBRE del file p.setUrlFoto(mr.getFilesystemName("file")); p.setEstado(Integer.parseInt(mr.getParameter("rbtn_estado"))); //Registro BD int resultado = productoDal.insertProduct(p); switch (resultado) { case 1: //out.print("Registro OK"); //Pagina Redirrecion request.getRequestDispatcher("redirect_index_intranet_producto_creado.jsp").forward(request, response); break; case 1062: //out.print("Producto Existente"); //Pagina Redirrecion request.getRequestDispatcher("redirect_index_intranet_error_producto_existente.jsp") .forward(request, response); break; default: //Error genrico request.getRequestDispatcher("redirect_index_intranet_error.jsp").forward(request, response); //out.print("Error : "+ productoDal.insertProduct(p)); //Pagina Redirrecion //request.getRequestDispatcher("pagina.jsp").forward(request, response); break; } } catch (Exception e) { //Error genrico request.getRequestDispatcher("redirect_index_intranet_error.jsp").forward(request, response); //out.print("error : " + e.getMessage()); } }
From source file:com.openmeap.util.ServletUtils.java
/** * @param modelManager/*ww w . j a v a2 s. c o m*/ * @param request * @param map * @return * @throws FileUploadException */ static final public Boolean handleFileUploads(Integer maxFileUploadSize, String fileStoragePrefix, HttpServletRequest request, Map<Object, Object> map) throws FileUploadException { DiskFileItemFactory factory = new DiskFileItemFactory(); factory.setSizeThreshold(4096); factory.setRepository(new File(fileStoragePrefix)); ServletFileUpload upload = new ServletFileUpload(factory); upload.setSizeMax(maxFileUploadSize); List fileItems = upload.parseRequest(request); for (FileItem item : (List<FileItem>) fileItems) { // we'll put this in the parameter map, // assuming the backing that is looking for it // knows what to expect String fieldName = item.getFieldName(); Boolean isFormField = item.isFormField(); Long size = item.getSize(); if (isFormField) { if (size > 0) { map.put(fieldName, new String[] { item.getString() }); } } else if (!isFormField) { map.put(fieldName, item); } } return true; }
From source file:com.king.platform.net.http.integration.MultiPart.java
@Test public void postMultiPart() throws Exception { AtomicReference<List<FileItem>> partReferences = new AtomicReference<>(); AtomicReference<Exception> exceptionReference = new AtomicReference<>(); integrationServer.addServlet(new HttpServlet() { @Override/*from w w w .j a v a2 s. com*/ protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { ServletFileUpload servletFileUpload = new ServletFileUpload(new DiskFileItemFactory()); try { List<FileItem> fileItems = servletFileUpload.parseRequest(req); partReferences.set(fileItems); } catch (FileUploadException e) { exceptionReference.set(e); } } }, "/testMultiPart"); httpClient .createPost( "http://localhost:" + port + "/testMultiPart") .idleTimeoutMillis( 0) .totalRequestTimeoutMillis( 0) .content( new MultiPartBuilder() .addPart( MultiPartBuilder .create("text1", "Message 1", StandardCharsets.ISO_8859_1) .contentType("multipart/form-data")) .addPart(MultiPartBuilder.create("binary1", new byte[] { 0x00, 0x01, 0x02 }) .contentType("application/octet-stream").charset(StandardCharsets.UTF_8) .fileName("application.bin")) .addPart(MultiPartBuilder.create("text2", "Message 2", StandardCharsets.ISO_8859_1)) .build()) .build().execute().join(); assertNull(exceptionReference.get()); List<FileItem> fileItems = partReferences.get(); FileItem fileItem = fileItems.get(1); assertEquals("application/octet-stream; charset=UTF-8", fileItem.getContentType()); assertEquals("binary1", fileItem.getFieldName()); assertEquals("application.bin", fileItem.getName()); }
From source file:com.radio.svc.controllers.admin.AddFeatureSSDController.java
@Override protected ModelAndView handleRequestInternal(HttpServletRequest request, HttpServletResponse response) throws Exception { //To change body of generated methods, choose Tools | Templates. String[] ssdFeatures = null;//from w w w. j a v a 2s. c om FileItem ssdFeatureFile = null; String songName = null; if (ServletFileUpload.isMultipartContent(request)) { try { List<FileItem> multiparts = new ServletFileUpload(new DiskFileItemFactory()).parseRequest(request); for (FileItem item : multiparts) { if (!item.isFormField()) { if (item.getFieldName().equals("ssdFeatureUpload")) { ssdFeatureFile = item; } } else { if (item.getFieldName().equals("songname")) { songName = item.getString(); //System.out.println( "Album Name " + item.getString() ); } } } } catch (Exception e) { e.printStackTrace(); } } ModelAndView model; model = new ModelAndView("/admin/featureSSDAdmin"); model.addObject("controller", "addfeaturessd"); featureSSDServiceProvider.addNewFeatureSSD(songName, ssdFeatureFile); model.addObject("msg", "success"); return model; }
From source file:edu.umd.cs.submitServer.MultipartRequest.java
public static MultipartRequest parseRequest(HttpServletRequest request, int maxSize, Logger logger, boolean strictChecking, ServletContext servletContext) throws IOException, ServletException { DiskFileItemFactory factory = getFactory(servletContext); ServletFileUpload upload = new ServletFileUpload(factory); upload.setSizeMax(maxSize);// w w w. j a v a 2 s. c o m MultipartRequest multipartRequest = new MultipartRequest(logger, strictChecking); try { // Parse the request List<FileItem> items = upload.parseRequest(request); for (FileItem item : items) { if (item.isFormField()) { multipartRequest.setParameter(item.getFieldName(), item.getString()); } else { multipartRequest.addFileItem(item); } } return multipartRequest; } catch (FileUploadBase.SizeLimitExceededException e) { Debug.error("File upload is too big " + e.getActualSize() + " > " + e.getPermittedSize()); Debug.error("upload info: " + multipartRequest); throw new ServletException(e); } catch (FileUploadException e) { Debug.error("FileUploadException: " + e); throw new ServletException(e); } }
From source file:controller.uploadPergunta9.java
/** * Processes requests for both HTTP <code>GET</code> and <code>POST</code> * methods./*from ww w . ja v a2 s . 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 { String idLocal = (String) request.getParameter("idLocal"); String idModelo = (String) request.getParameter("idModelo"); String expressaoModelo = (String) request.getParameter("expressaoModelo"); String nomeAutorModelo = (String) request.getParameter("nomeAutorModelo"); String equacaoAjustada = (String) request.getParameter("equacaoAjustada"); String idEquacaoAjustada = (String) request.getParameter("idEquacaoAjustada"); String name = ""; //process only if its multipart content if (ServletFileUpload.isMultipartContent(request)) { try { List<FileItem> multiparts = new ServletFileUpload(new DiskFileItemFactory()).parseRequest(request); for (FileItem item : multiparts) { if (!item.isFormField()) { name = new File(item.getName()).getName(); // item.write( new File(UPLOAD_DIRECTORY + File.separator + name)); item.write(new File(AbsolutePath + File.separator + name)); } } //File uploaded successfully request.setAttribute("message", "File Uploaded Successfully"); } catch (Exception ex) { request.setAttribute("message", "File Upload Failed due to " + ex); } } else { request.setAttribute("message", "Sorry this Servlet only handles file upload request"); } equacaoAjustada = equacaoAjustada.replace("+", "%2B"); expressaoModelo = expressaoModelo.replace("+", "%2B"); RequestDispatcher view = getServletContext() .getRequestDispatcher("/novoLocalPergunta9?id=" + idLocal + "&nomeArquivo=" + name + "&idModelo=" + idModelo + "&equacaoAjustada=" + equacaoAjustada + "&expressaoModelo=" + expressaoModelo + "&nomeAutorModelo=" + nomeAutorModelo + "&idEquacaoAjustada=" + idEquacaoAjustada); view.forward(request, response); // request.getRequestDispatcher("/novoLocalPergunta3?id="+idLocal+"&fupload=1&nomeArquivo="+name).forward(request, response); // request.getRequestDispatcher("/novoLocalPergunta4?id="+idLocal+"&nomeArquivo="+name).forward(request, response); }
From source file:Control.HandleTest.java
/** * Processes requests for both HTTP <code>GET</code> and <code>POST</code> * methods./* www. j a v a 2s.co 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"); try (PrintWriter out = response.getWriter()) { /* TODO output your page here. You may use following sample code. */ String path = getClass().getResource("/").getPath(); if (Paths.path == null) { File file = new File(path + "test.html"); path = file.getParent(); File file1 = new File(path + "test1.html"); path = file1.getParent(); File file2 = new File(path + "test1.html"); path = file2.getParent(); Paths.path = path; } else { path = Paths.path; } String name; if (ServletFileUpload.isMultipartContent(request)) { List<FileItem> multiparts = new ServletFileUpload(new DiskFileItemFactory()).parseRequest(request); for (FileItem item : multiparts) { if (!item.isFormField()) { name = new File(item.getName()).getName(); // temp.logoImage = Paths.logoPath + name; String FilePath = path + Paths.logoPathStore + name; item.write(new File(FilePath)); } } } } catch (Exception e) { } }
From source file:com.fjn.helper.common.io.file.common.FileUpAndDownloadUtil.java
/** * ???????/*from w ww .ja v a2 s . c o m*/ * @param klass ???klass?Class * @param filepath ? * @param sizeThreshold ?? * @param isFileNameBaseTime ???? * @return bean */ public static <T> Object upload(HttpServletRequest request, Class<T> klass, String filepath, int sizeThreshold, boolean isFileNameBaseTime) throws Exception { FileItemFactory fileItemFactory = null; if (sizeThreshold > 0) { File repository = new File(filepath); fileItemFactory = new DiskFileItemFactory(sizeThreshold, repository); } else { fileItemFactory = new DiskFileItemFactory(); } ServletFileUpload upload = new ServletFileUpload(fileItemFactory); ServletRequestContext requestContext = new ServletRequestContext(request); T bean = null; if (klass != null) { bean = klass.newInstance(); } // if (ServletFileUpload.isMultipartContent(requestContext)) { File parentDir = new File(filepath); List<FileItem> fileItemList = upload.parseRequest(requestContext); for (int i = 0; i < fileItemList.size(); i++) { FileItem item = fileItemList.get(i); // ?? if (item.isFormField()) { String paramName = item.getFieldName(); String paramValue = item.getString("UTF-8"); log.info("?" + paramName + "=" + paramValue); request.setAttribute(paramName, paramValue); // ?bean if (klass != null) { Field field = null; try { field = klass.getDeclaredField(paramName); if (field != null) { field.setAccessible(true); Class type = field.getType(); if (type == Integer.TYPE) { field.setInt(bean, Integer.valueOf(paramValue)); } else if (type == Double.TYPE) { field.setDouble(bean, Double.valueOf(paramValue)); } else if (type == Float.TYPE) { field.setFloat(bean, Float.valueOf(paramValue)); } else if (type == Boolean.TYPE) { field.setBoolean(bean, Boolean.valueOf(paramValue)); } else if (type == Character.TYPE) { field.setChar(bean, paramValue.charAt(0)); } else if (type == Long.TYPE) { field.setLong(bean, Long.valueOf(paramValue)); } else if (type == Short.TYPE) { field.setShort(bean, Short.valueOf(paramValue)); } else { field.set(bean, paramValue); } } } catch (NoSuchFieldException e) { log.info("" + klass.getName() + "?" + paramName); } } } // else { // <input type='file' name='xxx'> xxx String paramName = item.getFieldName(); log.info("?" + item.getSize()); if (sizeThreshold > 0) { if (item.getSize() > sizeThreshold) continue; } String clientFileName = item.getName(); int index = -1; // ?IE? if ((index = clientFileName.lastIndexOf("\\")) != -1) { clientFileName = clientFileName.substring(index + 1); } if (clientFileName == null || "".equals(clientFileName)) continue; String filename = null; log.info("" + paramName + "\t??" + clientFileName); if (isFileNameBaseTime) { filename = buildFileName(clientFileName); } else filename = clientFileName; request.setAttribute(paramName, filename); // ?bean if (klass != null) { Field field = null; try { field = klass.getDeclaredField(paramName); if (field != null) { field.setAccessible(true); field.set(bean, filename); } } catch (NoSuchFieldException e) { log.info("" + klass.getName() + "? " + paramName); continue; } } if (!parentDir.exists()) { parentDir.mkdirs(); } File newfile = new File(parentDir, filename); item.write(newfile); String serverPath = newfile.getPath(); log.info("?" + serverPath); } } } return bean; }
From source file:com.surevine.alfresco.audit.listeners.PerishableUploadDocumentAuditEventListener.java
@Override protected void populateSecondaryAuditItems(List<Auditable> events, HttpServletRequest request, HttpServletResponse response, JSONObject postContent) throws JSONException { // Create a ServletFileUpload instance to parse the form ServletFileUpload upload = new ServletFileUpload(new DiskFileItemFactory()); upload.setHeaderEncoding("UTF-8"); if (ServletFileUpload.isMultipartContent(request)) { try {/*from ww w . java 2s . co m*/ String perishableReason = null; String tags = null; for (final Object o : upload.parseRequest(request)) { FileItem item = (FileItem) o; if (item.isFormField() && "perishable".equals(item.getFieldName())) { perishableReason = item.getString(); } else if (item.isFormField() && "tags".equals(item.getFieldName())) { tags = item.getString(); } } Auditable primaryEvent = events.get(0); // If this is a site with perish reasons configured... if (_perishabilityLogic.getPerishReasons(primaryEvent.getSite()).size() > 0) { AuditItem item = new AuditItem(); setGenericAuditMetadata(item, request); // Copy any relevant fields from the primary audit event item.setNodeRef(primaryEvent.getNodeRef()); item.setVersion(primaryEvent.getVersion()); item.setSecLabel(primaryEvent.getSecLabel()); item.setSource(primaryEvent.getSource()); item.setAction(MarkPerishableAuditEventListener.ACTION); if (!StringUtils.isBlank(perishableReason)) { item.setDetails(perishableReason); } else { item.setDetails(MarkPerishableAuditEventListener.NO_PERISHABLE_MARK); } if (tags != null) { item.setTags(StringUtils.join(tags.trim().split(" "), ',')); } events.add(item); } } catch (FileUploadException e) { logger.error("Error while parsing request form", e); } } }
From source file:id.go.customs.training.gudang.web.BarangUploadServlet.java
@Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { Boolean adaFile = ServletFileUpload.isMultipartContent(req); if (adaFile) { try {/*from w ww .j a va2s . c om*/ String lokasiLengkap = req.getServletContext().getRealPath(lokasiPenyimpanan); System.out.println("Lokasi hasil upload : " + lokasiLengkap); // inisialisasi prosesor upload DiskFileItemFactory factory = new DiskFileItemFactory(); File lokasiSementaraHasilUpload = (File) req.getServletContext() .getAttribute("javax.servlet.context.tempdir"); factory.setRepository(lokasiSementaraHasilUpload); System.out.println("Lokasi upload sementara : " + lokasiSementaraHasilUpload.getAbsolutePath()); ServletFileUpload prosesorUpload = new ServletFileUpload(factory); List<FileItem> hasilUpload = prosesorUpload.parseRequest(req); System.out.println("Jumlah file = " + hasilUpload.size()); for (FileItem fileItem : hasilUpload) { System.out.println("----- Informasi File -----"); System.out.println("Tipe File : " + fileItem.getContentType()); System.out.println("Nama Field : " + fileItem.getFieldName()); System.out.println("Nama File : " + fileItem.getName()); System.out.println("Ukuran File : " + fileItem.getSize()); String fileTujuan = lokasiLengkap + File.separator + fileItem.getName(); File tujuan = new File(fileTujuan); fileItem.write(tujuan); System.out.println("Hasil upload ada di " + fileTujuan); HasilImportBarang hasil = BarangImporter.importCsv(tujuan); req.setAttribute("hasil", hasil); } } catch (Exception ex) { Logger.getLogger(BarangUploadServlet.class.getName()).log(Level.SEVERE, null, ex); } } // selesai upload, tampilkan hasil upload req.getRequestDispatcher("/WEB-INF/templates/jsp/barang/import.jsp").forward(req, resp); }