List of usage examples for org.apache.commons.fileupload FileItemStream openStream
InputStream openStream() throws IOException;
From source file:hudson.gwtmarketplace.server.ImageUploadServlet.java
@Override protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { boolean isMultipart = ServletFileUpload.isMultipartContent(request); ServletFileUpload upload = new ServletFileUpload(); Map<String, String> parameters = new HashMap<String, String>(); Image resizedImage = null;/*from w w w .j a v a 2 s. c o m*/ try { // Parse the request FileItemIterator iter = upload.getItemIterator(request); while (iter.hasNext()) { FileItemStream item = iter.next(); String name = item.getFieldName(); InputStream stream = item.openStream(); if (item.isFormField()) { parameters.put(name, toString(stream)); } else { resizedImage = resize(stream); } } } catch (Exception e) { response.sendError(500); } String productId = parameters.get("key"); if (null != productId && null != resizedImage) { try { String iconKey = productMgr.setImageData(Long.parseLong(productId), resizedImage.getImageData()); if (null != iconKey) { response.getOutputStream().write(iconKey.getBytes()); } } catch (InvalidAccessException e) { e.printStackTrace(); } } }
From source file:com.elit2.app.control.FileUpload.java
public void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException { response.setContentType("text/html"); boolean isMultipart = ServletFileUpload.isMultipartContent(request); if (isMultipart) { ServletFileUpload upload = new ServletFileUpload(); try {/*from ww w . java 2s . c o m*/ FileItemIterator itr = upload.getItemIterator(request); while (itr.hasNext()) { FileItemStream item = itr.next(); if (item.isFormField()) { String fieldName = item.getFieldName(); InputStream is = item.openStream(); byte[] b = new byte[is.available()]; is.read(b); String value = new String(b); response.getWriter().println(fieldName + ":" + value + "<br/>"); } else { String path = getServletContext().getRealPath("/"); if (com.elit2.app.model.FileUpload.proccessFile(path, item)) { response.getWriter().print("Deu certo"); } else { response.getWriter().print("Deu errado"); } } } } catch (FileUploadException ex) { ex.printStackTrace(); } } }
From source file:com.example.getstarted.basicactions.UpdateBookServlet.java
@Override public void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { BookDao dao = (BookDao) this.getServletContext().getAttribute("dao"); assert ServletFileUpload.isMultipartContent(req); CloudStorageHelper storageHelper = (CloudStorageHelper) getServletContext().getAttribute("storageHelper"); String newImageUrl = null;/* w w w .j a v a2s. c o m*/ Map<String, String> params = new HashMap<String, String>(); try { FileItemIterator iter = new ServletFileUpload().getItemIterator(req); while (iter.hasNext()) { FileItemStream item = iter.next(); if (item.isFormField()) { params.put(item.getFieldName(), Streams.asString(item.openStream())); } else if (!Strings.isNullOrEmpty(item.getName())) { newImageUrl = storageHelper.uploadFile(item, getServletContext().getInitParameter("bookshelf.bucket")); } } } catch (FileUploadException e) { throw new IOException(e); } try { Book oldBook = dao.readBook(Long.decode(params.get("id"))); Book book = new Book.Builder().author(params.get("author")).description(params.get("description")) .publishedDate(params.get("publishedDate")).title(params.get("title")) .imageUrl(null == newImageUrl ? params.get("imageUrl") : newImageUrl) .id(Long.decode(params.get("id"))).createdBy(oldBook.getCreatedBy()) .createdById(oldBook.getCreatedById()).build(); dao.updateBook(book); resp.sendRedirect("/read?id=" + params.get("id")); } catch (Exception e) { throw new ServletException("Error updating book", e); } }
From source file:fi.jyu.student.jatahama.onlineinquirytool.server.LoadSaveServlet.java
@Override public final void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException { try {//www. j av a 2s .co m // We always return xhtml in utf-8 response.setContentType("application/xhtml+xml"); response.setCharacterEncoding("utf-8"); // Default filename just in case none is found in form String filename = defaultFilename; // Commons file upload ServletFileUpload upload = new ServletFileUpload(); // Go through upload items FileItemIterator iterator = upload.getItemIterator(request); while (iterator.hasNext()) { FileItemStream item = iterator.next(); InputStream stream = item.openStream(); if (item.isFormField()) { // Parse form fields String fieldname = item.getFieldName(); if ("chartFilename".equals(fieldname)) { // Ordering is important in client page! We expect filename BEFORE data. Otherwise filename will be default // See also: http://www.w3.org/TR/html4/interact/forms.html#h-17.13.4 // "The parts are sent to the processing agent in the same order the // corresponding controls appear in the document stream." filename = Streams.asString(stream, "utf-8"); } else if ("chartDataXML".equals(fieldname)) { log.info("Doing form bounce"); String filenameAscii = formSafeAscii(filename); String fileNameUtf = formSafeUtfName(filename); String cdh = "attachment; filename=\"" + filenameAscii + "\"; filename*=utf-8''" + fileNameUtf; response.setHeader("Content-Disposition", cdh); ServletOutputStream out = response.getOutputStream(); Streams.copy(stream, out, false); out.flush(); // No more processing needed (prevent BOTH form AND upload from happening) return; } } else { // Handle upload log.info("Doing file bounce"); ServletOutputStream out = response.getOutputStream(); Streams.copy(stream, out, false); out.flush(); // No more processing needed (prevent BOTH form AND upload from happening) return; } } } catch (Exception ex) { throw new ServletException(ex); } }
From source file:com.lemania.sis.server.servlet.GcsServlet.java
/** * Writes the payload of the incoming post as the contents of a file to GCS. * If the request path is /gcs/Foo/Bar this will be interpreted as a request * to create a GCS file named Bar in bucket Foo. * /*from w w w . j a v a 2 s. c o m*/ * @throws ServletException */ @Override public void doPost(HttpServletRequest req, HttpServletResponse resp) throws IOException, ServletException { // GcsOutputChannel outputChannel = gcsService.createOrReplace(getFileName(req), GcsFileOptions.getDefaultInstance()); ServletFileUpload upload = new ServletFileUpload(); resp.setContentType("text/plain"); // InputStream fileContent = null; FileItemIterator iterator; try { iterator = upload.getItemIterator(req); while (iterator.hasNext()) { FileItemStream item = iterator.next(); InputStream stream = item.openStream(); if (item.isFormField()) { // } else { fileContent = stream; break; } } } catch (FileUploadException e) { // e.printStackTrace(); } // copy(fileContent, Channels.newOutputStream(outputChannel)); }
From source file:com.qualogy.qafe.web.upload.DatagridUploadServlet.java
@Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { byte[] filecontent = null; ServletFileUpload upload = new ServletFileUpload(); InputStream inputStream = null; ByteArrayOutputStream outputStream = null; boolean isFirstLineHeader = false; String delimiter = ","; writeUploadInfo(request);//from ww w . j av a2 s . c o m log(request.getHeader("User-Agent")); response.setContentType("text/html"); PrintWriter out = response.getWriter(); try { FileItemIterator fileItemIterator = upload.getItemIterator(request); while (fileItemIterator.hasNext()) { FileItemStream item = fileItemIterator.next(); inputStream = item.openStream(); // Read the file into a byte array. outputStream = new ByteArrayOutputStream(); byte[] buffer = new byte[8192]; int len = 0; while (-1 != (len = inputStream.read(buffer))) { outputStream.write(buffer, 0, len); } if (filecontent == null) { filecontent = outputStream.toByteArray(); } if (FORM_PARAMETER_DELIMITER.equals(item.getFieldName())) { delimiter = outputStream.toString(); } else if (FORM_PARAMETER_ISFIRSTLINEHEADER.equals(item.getFieldName())) { if ("on".equals(outputStream.toString())) { isFirstLineHeader = true; } } } inputStream.close(); outputStream.close(); } catch (FileUploadException e) { ExceptionHelper.printStackTrace(e); } catch (RuntimeException e) { out.print("Conversion failed. Please check the file. Message :" + e.getMessage()); } DocumentParameter dp = new DocumentParameter(); dp.setDelimiter(delimiter); dp.setFirstFieldHeader(isFirstLineHeader); dp.setData(filecontent); try { DocumentOutput dout = documentService.processExcelUpload(dp); String uploadUUID = DataStore.KEY_LOOKUP_DATA + dout.getUuid(); ApplicationLocalStore.getInstance().store(uploadUUID, uploadUUID, dout.getData()); out.print("UUID=" + uploadUUID); } catch (Exception e) { out.print("Conversion failed. Please check the file (" + e.getMessage() + ")"); } }
From source file:br.com.ifpb.bdnc.projeto.geo.servlets.CadastraImagem.java
private Image mountImage(HttpServletRequest request) { Image image = new Image(); image.setCoord(new Coordenate()); boolean isMultipart = ServletFileUpload.isMultipartContent(request); if (isMultipart) { ServletFileUpload upload = new ServletFileUpload(); try {//from w w w. j a v a 2 s. com FileItemIterator itr = upload.getItemIterator(request); while (itr.hasNext()) { FileItemStream item = itr.next(); if (item.isFormField()) { InputStream in = item.openStream(); byte[] b = new byte[in.available()]; in.read(b); if (item.getFieldName().equals("description")) { image.setDescription(new String(b)); } else if (item.getFieldName().equals("authors")) { image.setAuthors(new String(b)); } else if (item.getFieldName().equals("end")) { image.setDate( LocalDate.parse(new String(b), DateTimeFormatter.ofPattern("yyyy-MM-dd"))); } else if (item.getFieldName().equals("latitude")) { image.getCoord().setLat(new String(b)); } else if (item.getFieldName().equals("longitude")) { image.getCoord().setLng(new String(b)); } else if (item.getFieldName().equals("heading")) { image.getCoord().setHeading(new String(b)); } else if (item.getFieldName().equals("pitch")) { image.getCoord().setPitch(new String(b)); } else if (item.getFieldName().equals("zoom")) { image.getCoord().setZoom(new String(b)); } } else { if (!item.getName().equals("")) { MultipartData md = new MultipartData(); String folder = "historicImages"; md.setFolder(folder); String path = request.getServletContext().getRealPath("/"); System.out.println(path); String nameToSave = "pubImage" + Calendar.getInstance().getTimeInMillis() + item.getName(); image.setImagePath(folder + "/" + nameToSave); md.saveImage(path, item, nameToSave); String imageMinPath = folder + "/" + "min" + nameToSave; RedimencionadorImagem.resize(path, folder + "/" + nameToSave, path + "/" + imageMinPath.toString(), IMAGE_MIN_WIDTH, IMAGE_MIM_HEIGHT); image.setMinImagePath(imageMinPath); } } } } catch (FileUploadException | IOException ex) { System.out.println("Erro ao manipular dados"); } } return image; }
From source file:com.example.getstarted.basicactions.CreateBookServlet.java
@Override public void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { assert ServletFileUpload.isMultipartContent(req); CloudStorageHelper storageHelper = (CloudStorageHelper) getServletContext().getAttribute("storageHelper"); String newImageUrl = null;//from w ww.j a v a 2s . co m Map<String, String> params = new HashMap<String, String>(); try { FileItemIterator iter = new ServletFileUpload().getItemIterator(req); while (iter.hasNext()) { FileItemStream item = iter.next(); if (item.isFormField()) { params.put(item.getFieldName(), Streams.asString(item.openStream())); } else if (!Strings.isNullOrEmpty(item.getName())) { newImageUrl = storageHelper.uploadFile(item, getServletContext().getInitParameter("bookshelf.bucket")); } } } catch (FileUploadException e) { throw new IOException(e); } String createdByString = ""; String createdByIdString = ""; HttpSession session = req.getSession(); if (session.getAttribute("userEmail") != null) { // Does the user have a logged in session? createdByString = (String) session.getAttribute("userEmail"); createdByIdString = (String) session.getAttribute("userId"); } Book book = new Book.Builder().author(params.get("author")).description(params.get("description")) .publishedDate(params.get("publishedDate")).title(params.get("title")) .imageUrl(null == newImageUrl ? params.get("imageUrl") : newImageUrl).createdBy(createdByString) .createdById(createdByIdString).build(); BookDao dao = (BookDao) this.getServletContext().getAttribute("dao"); try { Long id = dao.createBook(book); logger.log(Level.INFO, "Created book {0}", book); resp.sendRedirect("/read?id=" + id.toString()); // read what we just wrote } catch (Exception e) { throw new ServletException("Error creating book", e); } }
From source file:com.vmware.photon.controller.api.frontend.resources.image.ImagesResource.java
private Task parseImageDataFromRequest(HttpServletRequest request) throws InternalException, ExternalException { Task task = null;/*from w w w . j a v a 2 s. co m*/ ServletFileUpload fileUpload = new ServletFileUpload(); FileItemIterator iterator = null; InputStream itemStream = null; try { ImageReplicationType replicationType = null; iterator = fileUpload.getItemIterator(request); while (iterator.hasNext()) { FileItemStream item = iterator.next(); itemStream = item.openStream(); if (item.isFormField()) { String fieldName = item.getFieldName(); switch (fieldName.toUpperCase()) { case "IMAGEREPLICATION": replicationType = ImageReplicationType.valueOf(Streams.asString(itemStream).toUpperCase()); break; default: logger.warn(String.format("The parameter '%s' is unknown in image upload.", fieldName)); } } else { if (replicationType == null) { throw new ImageUploadException( "ImageReplicationType is required and should be encoded before image data in the upload request."); } task = imageFeClient.create(itemStream, item.getName(), replicationType); } itemStream.close(); itemStream = null; } } catch (IllegalArgumentException ex) { throw new ImageUploadException("Image upload receives invalid parameter", ex); } catch (IOException ex) { throw new ImageUploadException("Image upload IOException", ex); } catch (FileUploadException ex) { throw new ImageUploadException("Image upload FileUploadException", ex); } finally { flushRequest(iterator, itemStream); } if (task == null) { throw new ImageUploadException("There is no image stream data in the image upload request."); } return task; }
From source file:com.vmware.photon.controller.api.frontend.resources.image.ImagesResource.java
private void flushRequest(FileItemIterator iterator, InputStream itemStream) { try {// w ww . j a v a2s . com // close any streams left open due to error. if (itemStream != null) { itemStream.close(); } // iterate through the remaining fields an flush the fields that contain the file data. while (null != iterator && iterator.hasNext()) { FileItemStream item = iterator.next(); if (!item.isFormField()) { item.openStream().close(); } } } catch (IOException | FileUploadException ex) { logger.warn("Unexpected exception flushing upload request.", ex); } }