protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { try { List<FileItem> items = new ServletFileUpload(new DiskFileItemFactory()).parseRequest(request); for (FileItem item : items) { if (item.isFormField()) { // Process regular form field (input type="text|radio|checkbox|etc", select, etc). String fieldName = item.getFieldName(); String fieldValue = item.getString(); // ... (do your job here) } else { // Process form file field (input type="file"). String fieldName = item.getFieldName(); String fileName = FilenameUtils.getName(item.getName()); InputStream fileContent = item.getInputStream(); // ... (do your job here) } } } catch (FileUploadException e) { throw new ServletException("Cannot parse multipart request.", e); } // ... }
private Collection<Part> parseMultipartWithCommonsFileUpload(HttpServletRequest request) throws IOException { if (sharedFileItemFactory.get() == null) { // Not a big deal if two threads actually set this up DiskFileItemFactory fileItemFactory = new DiskFileItemFactory( 1 << 16, (File) servletContext.getAttribute("javax.servlet.context.tempdir")); fileItemFactory.setFileCleaningTracker( FileCleanerCleanup.getFileCleaningTracker(servletContext)); sharedFileItemFactory.compareAndSet(null, fileItemFactory); } try { return new ServletFileUpload(sharedFileItemFactory.get()).parseRequest(request) .stream().map(FileItemPart::new).collect(Collectors.toList()); } catch (FileUploadException e) { throw new IOException(e.getMessage()); } }
String uploadFileName = ""; DiskFileItemFactory factory = new DiskFileItemFactory(); factory.setSizeThreshold(1034); ServletFileUpload upload = new ServletFileUpload(factory); List items = upload.parseRequest(request); if (item.isFormField()) { if (item.getFieldName().equals("scmOverwrite")) { scmOverwrite = item.getString(); uploadFileName = item.getName(); sbFile.append(item.getString());
up.setFileItemFactory(new DiskFileItemFactory()); for (FileItem item : (List<FileItem>) up.parseRequest(httpRequest)) { if (item.isFormField()) { kvpFileItems.put(item.getFieldName(), item); } else {
Jenkins.getInstance().checkPermission(UPLOAD_PLUGINS); ServletFileUpload upload = new ServletFileUpload(new DiskFileItemFactory()); FileItem fileItem = upload.parseRequest(req).get(0); String fileName = Util.getFileName(fileItem.getName()); if("".equals(fileName)){ return new HttpRedirect("advanced");
FileItemFactory fileItemFactory = new DiskFileItemFactory(); FileUpload fileUpload = new FileUpload(fileItemFactory); RequestContext requestContext = new MockHttpOutputMessageRequestContext(outputMessage); assertTrue(item.isFormField()); assertEquals("part1", item.getFieldName()); assertEquals("{\"string\":\"foo\"}", item.getString()); assertTrue(item.isFormField()); assertEquals("part2", item.getFieldName());
try { List<FileItem> items = new ServletFileUpload(new DiskFileItemFactory()).parseRequest(request); for (FileItem item : items) { if (item.getFieldName().equals("fieldname")) { String fileName = FilenameUtils.getName(item.getName()); String fileContentType = item.getContentType(); InputStream fileContent = item.getInputStream(); // ... (do your job here) } } } catch (FileUploadException e) { throw new ServletException("Cannot parse multipart request.", e); }
FileItemFactory factory = new DiskFileItemFactory(); // Set factory constraints // factory.setSizeThreshold(yourMaxMemorySize); // factory.setRepository(yourTempDirectory); // Create a new file upload handler ServletFileUpload upload = new ServletFileUpload( factory ); // upload.setSizeMax(yourMaxRequestSize); // Parse the request List<FileItem> uploadItems = upload.parseRequest( request ); for( FileItem uploadItem : uploadItems ) { if( uploadItem.isFormField() ) { String fieldName = uploadItem.getFieldName(); String value = uploadItem.getString(); } }
@Controller @RequestMapping("/FileUploadController") public class FileUploadController { @RequestMapping(method = RequestMethod.POST) protected ModelAndView onSubmit(HttpServletRequest request) throws Exception{ FileItemFactory factory = new DiskFileItemFactory(); ServletFileUpload upload = new ServletFileUpload(factory); List<FileItem> /* FileItem */ items = upload.parseRequest(request); for (FileItem fileItem : items) { if (fileItem.isFormField()) { // processFormField(fileItem); } else { File uploadedFile = new File("/tmp/junk/" + fileItem.getName()); fileItem.write(uploadedFile); } } return new ModelAndView("index"); } }
FileItemFactory fileItemFactory = new DiskFileItemFactory(); FileUpload fileUpload = new FileUpload(fileItemFactory); RequestContext requestContext = new MockHttpOutputMessageRequestContext(outputMessage); assertEquals(6, items.size()); FileItem item = items.get(0); assertTrue(item.isFormField()); assertEquals("name 1", item.getFieldName()); assertEquals("value 1", item.getString()); assertTrue(item.isFormField()); assertEquals("name 2", item.getFieldName()); assertEquals("value 2+1", item.getString()); assertTrue(item.isFormField()); assertEquals("name 2", item.getFieldName()); assertEquals("value 2+2", item.getString()); assertFalse(item.isFormField()); assertEquals("logo", item.getFieldName()); assertEquals("logo.jpg", item.getName()); assertEquals("image/jpeg", item.getContentType()); assertEquals(logo.getFile().length(), item.getSize());
"-----1234--\r\n"; ServletFileUpload upload = new ServletFileUpload(new DiskFileItemFactory()); upload.setFileSizeMax(-1); HttpServletRequest req = new MockHttpServletRequest( request.getBytes("US-ASCII"), Constants.CONTENT_TYPE); List<FileItem> fileItems = upload.parseRequest(req); assertEquals(1, fileItems.size()); FileItem item = fileItems.get(0); assertEquals("This is the content of the file\n", new String(item.get())); upload = new ServletFileUpload(new DiskFileItemFactory()); upload.setFileSizeMax(40); req = new MockHttpServletRequest(request.getBytes("US-ASCII"), Constants.CONTENT_TYPE); fileItems = upload.parseRequest(req); assertEquals(1, fileItems.size()); item = fileItems.get(0); assertEquals("This is the content of the file\n", new String(item.get())); upload = new ServletFileUpload(new DiskFileItemFactory()); upload.setFileSizeMax(30); req = new MockHttpServletRequest(request.getBytes("US-ASCII"), Constants.CONTENT_TYPE); try { upload.parseRequest(req); fail("Expected exception."); } catch (FileUploadBase.FileSizeLimitExceededException e) {
FileItemFactory factory = new DiskFileItemFactory(); ServletFileUpload upload = new ServletFileUpload(factory); try { Context.openSession(); List<FileItem> items = upload.parseRequest(requestContext); for (FileItem item : items) { InputStream uploadedStream = item.getInputStream(); ModuleUtil.insertModuleFile(uploadedStream, item.getName());
public HttpFileUploadRequestWrapper(HttpServletRequest pRequest, File pUploadDir, long pMaxSize) throws ServletException { super(pRequest); DiskFileItemFactory factory = new DiskFileItemFactory( 128 * 1024, // 128 KByte new File(pUploadDir.getAbsolutePath()) ); FileUpload upload = new FileUpload(factory); upload.setSizeMax(pMaxSize); // TODO: Defer request parsing?? try { //noinspection unchecked List<FileItem> items = upload.parseRequest(new ServletRequestContext(pRequest)); for (FileItem item : items) { if (item.isFormField()) { processFormField(item.getFieldName(), item.getString()); } else { processeFile(item); } } } catch (FileUploadBase.SizeLimitExceededException e) { throw new FileSizeExceededException(e); } catch (org.apache.commons.fileupload.FileUploadException e) { throw new FileUploadException(e); } }
//Handle File Upload for the attachment ServletFileUpload servletFileUpload = new ServletFileUpload(new DiskFileItemFactory()); try{ List fileItemsList = servletFileUpload.parseRequest(request); //TODO: Take datafile input from the field and pass the file name so that we can view the file name Iterator it = fileItemsList.iterator(); while (it.hasNext()){ FileItem fileItem = (FileItem)it.next(); if (fileItem.isFormField()){ /* The file item contains a simple name-value pair of a form field */ } else{ //do what you want with the file}
// Create a factory for disk-based file items FileItemFactory factory = new DiskFileItemFactory(); // Create a new file upload handler ServletFileUpload upload = new ServletFileUpload(factory); // Parse the request List /* FileItem */ items = upload.parseRequest(request); // Process the uploaded items Iterator iter = items.iterator(); while (iter.hasNext()) { FileItem item = (FileItem) iter.next(); if (item.isFormField()) { // Process a normal field String name = item.getFieldName(); String value = item.getString(); } else { // Process a file upload field String fileName = item.getName(); // DO further processing } }
List<FileItem> multiparts = new ServletFileUpload( new DiskFileItemFactory()).parseRequest(request); for(FileItem item : multiparts){ if(!item.isFormField()){ String name = new File(item.getName()).getName(); } }
@Test public void parseImpliedUtf8() throws Exception { // utf8 encoded form-data without explicit content-type encoding String text = "-----1234\r\n" + "Content-Disposition: form-data; name=\"utf8Html\"\r\n" + "\r\n" + "Ths s the cotet of the fle\n" + "\r\n" + "-----1234--\r\n"; byte[] bytes = text.getBytes("UTF-8"); HttpServletRequest request = new MockHttpServletRequest(bytes, Constants.CONTENT_TYPE); DiskFileItemFactory fileItemFactory = new DiskFileItemFactory(); fileItemFactory.setDefaultCharset("UTF-8"); ServletFileUpload upload = new ServletFileUpload(fileItemFactory); List<FileItem> fileItems = upload.parseRequest(request); FileItem fileItem = fileItems.get(0); assertTrue(fileItem.getString(), fileItem.getString().contains("cotet")); } }
multipartFormParameters = new TreeMap<>(String.CASE_INSENSITIVE_ORDER); ServletFileUpload upload = new ServletFileUpload(new DiskFileItemFactory()); List<FileItem> items = upload.parseRequest(this); for (FileItem item : items) { String fileName = FilenameUtils.getName(item.getName()); AwsProxyRequestPart newPart = new AwsProxyRequestPart(item.get()); newPart.setName(fileName);
List<FileItem> items = new ServletFileUpload(new DiskFileItemFactory()).parseRequest(request); for (FileItem item : items) { if (item.isFormField()) { // Process regular field. } else { // Process uploaded file. } }
FileItemFactory factory = new DiskFileItemFactory(); ServletFileUpload upload = new ServletFileUpload(factory); List items = upload.parseRequest(request); // Process the uploaded form items Iterator iter = items.iterator(); while (iter.hasNext()) { FileItem item = (FileItem) iter.next(); if (item.isFormField()) { // ** here you get the non-file parameters ** } else { processUploadedFile(item); } }