List of usage examples for org.apache.commons.fileupload.disk DiskFileItem isFormField
boolean isFormField
To view the source code for org.apache.commons.fileupload.disk DiskFileItem isFormField.
Click Source Link
From source file:org.apache.axis2.builder.MultipartFormDataBuilder.java
private MultipleEntryHashMap getParameterMap(RequestContext request, String charSetEncoding) throws FileUploadException { MultipleEntryHashMap parameterMap = new MultipleEntryHashMap(); List items = parseRequest(request); Iterator iter = items.iterator(); while (iter.hasNext()) { DiskFileItem diskFileItem = (DiskFileItem) iter.next(); boolean isFormField = diskFileItem.isFormField(); Object value;// w w w .j a v a2s .c o m try { if (isFormField) { value = getTextParameter(diskFileItem, charSetEncoding); } else { value = getFileParameter(diskFileItem); } } catch (Exception ex) { throw new FileUploadException(ex.getMessage()); } parameterMap.put(diskFileItem.getFieldName(), value); } return parameterMap; }
From source file:org.datacleaner.monitor.server.media.FileUploadServlet.java
@Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { clearSession(req);/*from w w w . j a v a2s .com*/ File tempFolder = FileHelper.getTempDir(); try { File subDirectory = new File(tempFolder, ".datacleaner_upload"); if (subDirectory.mkdirs()) { tempFolder = subDirectory; } } catch (Exception e) { logger.warn("Could not create subdirectory in temp folder", e); } final FileItemFactory fileItemFactory = new DiskFileItemFactory(0, tempFolder); final ServletFileUpload servletFileUpload = new ServletFileUpload(fileItemFactory); servletFileUpload.setFileSizeMax(FILE_SIZE_MAX); servletFileUpload.setSizeMax(REQUEST_SIZE_MAX); final List<Object> resultFileElements = new ArrayList<Object>(); final HttpSession session = req.getSession(); try { int index = 0; @SuppressWarnings("unchecked") final List<DiskFileItem> items = servletFileUpload.parseRequest(req); for (DiskFileItem item : items) { if (item.isFormField()) { logger.warn("Ignoring form field in request: {}", item); } else { final String sessionKey = "file_upload_" + index; final File file = item.getStoreLocation(); String filename = toFilename(item.getName()); logger.info("File '{}' uploaded to temporary location: {}", filename, file); session.setAttribute(sessionKey, file); final Map<String, String> resultItem = new LinkedHashMap<String, String>(); resultItem.put("field_name", item.getFieldName()); resultItem.put("file_name", filename); resultItem.put("content_type", item.getContentType()); resultItem.put("size", Long.toString(item.getSize())); resultItem.put("session_key", sessionKey); resultFileElements.add(resultItem); index++; } } } catch (FileUploadException e) { logger.error("Unexpected file upload exception: " + e.getMessage(), e); throw new IOException(e); } final String contentType = req.getParameter("contentType"); if (contentType == null) { resp.setContentType("application/json"); } else { resp.setContentType(contentType); } final Map<String, Object> resultMap = new LinkedHashMap<String, Object>(); resultMap.put("status", "success"); resultMap.put("files", resultFileElements); // write result as JSON final ObjectMapper objectMapper = new ObjectMapper(); objectMapper.writeValue(resp.getOutputStream(), resultMap); }
From source file:org.debux.webmotion.server.handler.ParametersMultipartHandler.java
@Override public void handle(Mapping mapping, Call call) { HttpContext context = call.getContext(); HttpServletRequest request = context.getRequest(); Map<String, Object> extractParameters = call.getExtractParameters(); boolean isMultipart = ServletFileUpload.isMultipartContent(request); if (isMultipart) { FileItemFactory fileItemFactory = new DiskFileItemFactory(0, null); ServletFileUpload upload = new ServletFileUpload(fileItemFactory); HttpSession session = request.getSession(); if (session != null) { log.debug("Set file upload listener"); FileProgressListener listener = new FileProgressListener(); upload.setProgressListener(listener); session.setAttribute(FileProgressListener.SESSION_ATTRIBUTE_NAME, listener); call.setFileUploadRequest(true); } else {//w w w . java 2s . c om log.warn("No session for file upload listener"); } try { List<DiskFileItem> items = upload.parseRequest(request); for (DiskFileItem item : items) { String fieldName = item.getFieldName(); if (item.isFormField()) { String fieldValue; try { fieldValue = item.getString("UTF-8"); } catch (UnsupportedEncodingException e) { fieldValue = item.getString(); } String[] values = (String[]) extractParameters.get(fieldName); if (values == null) { values = new String[] { fieldValue }; extractParameters.put(fieldName, values); } else { values = (String[]) ArrayUtils.add(values, fieldValue); extractParameters.put(fieldName, values); } } else { UploadFile uploadFile = new UploadFile(); File file = item.getStoreLocation(); uploadFile.setFile(file); String fileName = item.getName(); uploadFile.setName(fileName); long fileSize = item.getSize(); uploadFile.setSize(fileSize); String fileType = item.getContentType(); uploadFile.setContentType(fileType); extractParameters.put(fieldName, uploadFile); } } } catch (FileUploadException fue) { throw new WebMotionException("Error during upload file on server", fue); } } else { Map<String, String[]> parameters = context.getParameters(); extractParameters.putAll(parameters); } }
From source file:org.eclipse.rap.rwt.supplemental.fileupload.internal.FileUploadProcessor.java
private DiskFileItem readUploadedFileItem(HttpServletRequest request) throws FileUploadException { ServletFileUpload upload = createUpload(); DiskFileItem result = null;//from w ww . j a v a 2s.c om List<?> uploadedItems = upload.parseRequest(request); // TODO [rst] Support multiple fields in multipart message if (uploadedItems.size() > 0) { // TODO [rst] Upload fails if the file is not the first field DiskFileItem fileItem = (DiskFileItem) uploadedItems.get(0); // Don't check for file size == 0 because this would prevent // uploading empty files if (!fileItem.isFormField()) { result = fileItem; } } return result; }
From source file:org.infoglue.calendar.actions.CalendarUploadAbstractAction.java
public File getFile() { try {// w w w .j a v a2 s . c o m DiskFileItemFactory factory = new DiskFileItemFactory(); // Configure the factory here, if desired. PortletFileUpload upload = new PortletFileUpload(factory); // Configure the uploader here, if desired. List fileItems = upload.parseRequest(ServletActionContext.getRequest()); log.debug("fileItems:" + fileItems.size()); Iterator i = fileItems.iterator(); while (i.hasNext()) { Object o = i.next(); DiskFileItem dfi = (DiskFileItem) o; log.debug("dfi:" + dfi.getFieldName()); log.debug("dfi:" + dfi); if (!dfi.isFormField()) { String fieldName = dfi.getFieldName(); String fileName = dfi.getName(); String contentType = dfi.getContentType(); boolean isInMemory = dfi.isInMemory(); long sizeInBytes = dfi.getSize(); log.debug("fieldName:" + fieldName); log.debug("fileName:" + fileName); log.debug("contentType:" + contentType); log.debug("isInMemory:" + isInMemory); log.debug("sizeInBytes:" + sizeInBytes); File uploadedFile = new File(getTempFilePath() + File.separator + fileName); dfi.write(uploadedFile); return uploadedFile; } } } catch (Exception e) { e.printStackTrace(); } return file; }
From source file:org.infoglue.calendar.actions.CreateResourceAction.java
/** * This is the entry point for the main listing. *//* w ww.j av a 2s.c o m*/ public String execute() throws Exception { log.debug("-------------Uploading file....."); File uploadedFile = null; String maxUploadSize = ""; String uploadSize = ""; try { DiskFileItemFactory factory = new DiskFileItemFactory(); factory.setSizeThreshold(2000000); //factory.setRepository(yourTempDirectory); PortletFileUpload upload = new PortletFileUpload(factory); String maxSize = getSetting("AssetUploadMaxFileSize"); log.debug("maxSize:" + maxSize); if (maxSize != null && !maxSize.equals("") && !maxSize.equals("@AssetUploadMaxFileSize@")) { try { maxUploadSize = maxSize; upload.setSizeMax((new Long(maxSize) * 1000)); } catch (Exception e) { log.warn("Faulty max size parameter sent from portlet component:" + maxSize); } } else { maxSize = "" + (10 * 1024); maxUploadSize = maxSize; upload.setSizeMax((new Long(maxSize) * 1000)); } List fileItems = upload.parseRequest(ServletActionContext.getRequest()); log.debug("fileItems:" + fileItems.size()); Iterator i = fileItems.iterator(); while (i.hasNext()) { Object o = i.next(); DiskFileItem dfi = (DiskFileItem) o; log.debug("dfi:" + dfi.getFieldName()); log.debug("dfi:" + dfi); if (dfi.isFormField()) { String name = dfi.getFieldName(); String value = dfi.getString(); uploadSize = "" + (dfi.getSize() / 1000); log.debug("name:" + name); log.debug("value:" + value); if (name.equals("assetKey")) { this.assetKey = value; } else if (name.equals("eventId")) { this.eventId = new Long(value); ServletActionContext.getRequest().setAttribute("eventId", this.eventId); } else if (name.equals("calendarId")) { this.calendarId = new Long(value); ServletActionContext.getRequest().setAttribute("calendarId", this.calendarId); } else if (name.equals("mode")) this.mode = value; } else { String fieldName = dfi.getFieldName(); String fileName = dfi.getName(); uploadSize = "" + (dfi.getSize() / 1000); this.fileName = fileName; log.debug("FileName:" + this.fileName); uploadedFile = new File(getTempFilePath() + File.separator + fileName); dfi.write(uploadedFile); } } } catch (Exception e) { ServletActionContext.getRequest().getSession().setAttribute("errorMessage", "Exception uploading resource. " + e.getMessage() + ".<br/>Max upload size: " + maxUploadSize + " KB"); // + "<br/>Attempted upload size (in KB):" + uploadSize); ActionContext.getContext().getValueStack().getContext().put("errorMessage", "Exception uploading resource. " + e.getMessage() + ".<br/>Max upload size: " + maxUploadSize + " KB"); // + "<br/>Attempted upload size (in KB):" + uploadSize); log.error("Exception uploading resource. " + e.getMessage()); return Action.ERROR; } try { log.debug("Creating resources.....:" + this.eventId + ":" + ServletActionContext.getRequest().getParameter("eventId") + ":" + ServletActionContext.getRequest().getParameter("calendarId")); ResourceController.getController().createResource(this.eventId, this.getAssetKey(), this.getFileContentType(), this.getFileName(), uploadedFile, getSession()); } catch (Exception e) { ServletActionContext.getRequest().getSession().setAttribute("errorMessage", "Exception saving resource to database: " + e.getMessage()); ActionContext.getContext().getValueStack().getContext().put("errorMessage", "Exception saving resource to database: " + e.getMessage()); log.error("Exception saving resource to database. " + e.getMessage()); return Action.ERROR; } return Action.SUCCESS; }
From source file:org.infoglue.calendar.actions.UpdateEventAction.java
/** * This is the entry point for the main listing. *///from www . ja v a 2s .com public String upload() throws Exception { try { DiskFileItemFactory factory = new DiskFileItemFactory(); // Configure the factory here, if desired. PortletFileUpload upload = new PortletFileUpload(factory); // Configure the uploader here, if desired. List fileItems = upload.parseRequest(ServletActionContext.getRequest()); log.debug("fileItems:" + fileItems.size()); Iterator i = fileItems.iterator(); while (i.hasNext()) { Object o = i.next(); DiskFileItem dfi = (DiskFileItem) o; log.debug("dfi:" + dfi.getFieldName()); log.debug("dfi:" + dfi); if (!dfi.isFormField()) { String fieldName = dfi.getFieldName(); String fileName = dfi.getName(); String contentType = dfi.getContentType(); boolean isInMemory = dfi.isInMemory(); long sizeInBytes = dfi.getSize(); log.debug("fieldName:" + fieldName); log.debug("fileName:" + fileName); log.debug("contentType:" + contentType); log.debug("isInMemory:" + isInMemory); log.debug("sizeInBytes:" + sizeInBytes); File uploadedFile = new File(getTempFilePath() + File.separator + fileName); dfi.write(uploadedFile); } } } catch (Exception e) { e.printStackTrace(); } log.debug(""); ResourceController.getController().createResource(this.eventId, this.getAssetKey(), this.getFileContentType(), this.getFileFileName(), this.getFile(), getSession()); return "successUpload"; }
From source file:org.infoglue.cms.util.FileUploadHelper.java
/** * Lists the files// w w w. j a v a 2 s. c om */ public static void listMultiPartFiles(HttpServletRequest req) { try { File tempDir = new File("c:/temp/uploads"); logger.info("tempDir:" + tempDir.exists()); DiskFileItemFactory factory = new DiskFileItemFactory(1000, tempDir); ServletFileUpload upload = new ServletFileUpload(factory); if (ServletFileUpload.isMultipartContent((HttpServletRequest) req)) { List fileItems = upload.parseRequest((HttpServletRequest) req); logger.info("******************************"); logger.info("fileItems:" + fileItems.size()); logger.info("******************************"); req.setAttribute("Test", "Mattias Testar"); Iterator i = fileItems.iterator(); while (i.hasNext()) { Object o = i.next(); DiskFileItem dfi = (DiskFileItem) o; logger.info("dfi:" + dfi.getFieldName()); logger.info("dfi:" + dfi); if (!dfi.isFormField()) { String fieldName = dfi.getFieldName(); String fileName = dfi.getName(); String contentType = dfi.getContentType(); boolean isInMemory = dfi.isInMemory(); long sizeInBytes = dfi.getSize(); logger.info("fieldName:" + fieldName); logger.info("fileName:" + fileName); logger.info("contentType:" + contentType); logger.info("isInMemory:" + isInMemory); logger.info("sizeInBytes:" + sizeInBytes); File uploadedFile = new File("c:/temp/uploads/" + fileName); dfi.write(uploadedFile); req.setAttribute(dfi.getFieldName(), uploadedFile.getAbsolutePath()); } } } } catch (Exception e) { e.printStackTrace(); } }
From source file:org.wso2.carbon.ui.transports.fileupload.JarZipUploadExecutor.java
public boolean execute(HttpServletRequest request, HttpServletResponse response) throws CarbonException, IOException { ServletRequestContext servletRequestContext = new ServletRequestContext(request); boolean isMultipart = ServletFileUpload.isMultipartContent(servletRequestContext); PrintWriter out = response.getWriter(); response.setContentType("text/html; charset=utf-8"); try {//from w w w .j a v a 2 s.c om if (isMultipart) { List items = parseRequest(servletRequestContext); Map fileResourceMap = (Map) configurationContext.getProperty(ServerConstants.FILE_RESOURCE_MAP); if (fileResourceMap == null) { fileResourceMap = new TreeBidiMap(); configurationContext.setProperty(ServerConstants.FILE_RESOURCE_MAP, fileResourceMap); } List resourceUUID = new ArrayList(); String main = null; for (Iterator iterator = items.iterator(); iterator.hasNext();) { DiskFileItem item = (DiskFileItem) iterator.next(); if (!item.isFormField()) { String uuid = String.valueOf(System.currentTimeMillis() + Math.random()); String extraFileLocation = configurationContext.getProperty(ServerConstants.WORK_DIR) + File.separator + "extra" + File.separator + uuid + File.separator; String fieldName = item.getFieldName(); if (fieldName != null && fieldName.equals("jarZipFilename")) { File dirs = new File(extraFileLocation); dirs.mkdirs(); String fileName = item.getName(); String fileExtension = fileName; checkServiceFileExtensionValidity(fileExtension, new String[] { ".jar", ".zip" }); File uploadedFile = new File(extraFileLocation, getFileName(fileName)); item.write(uploadedFile); main = uuid; resourceUUID.add(uuid); fileResourceMap.put(uuid, uploadedFile.getAbsolutePath()); } if (fieldName != null && fieldName.equals("jarResource")) { String fileName = item.getName(); if (fileName.toLowerCase().endsWith(".jar")) { File dirs = new File(extraFileLocation); dirs.mkdirs(); File uploadedFile = new File(extraFileLocation, getFileName(fileName)); item.write(uploadedFile); resourceUUID.add(uuid); fileResourceMap.put(uuid, uploadedFile.getAbsolutePath()); } } } } if (main == null) { out.write("<script type=\"text/javascript\">" + "top.wso2.wsf.Util.alertWarning('Please upload a jar or a zip file.');" + "</script>"); } String s = "var uObj = new Object();"; for (int i = 0; i < resourceUUID.size(); i++) { s += "uObj[" + i + "]=\"" + resourceUUID.get(i) + "\";\n"; } out.write("<script type=\"text/javascript\">" + s + "top." + "jarZipFileUploadExecutor" + "(\"" + main + "\",uObj);" + "</script>"); out.flush(); } } catch (Exception e) { log.error("File upload FAILED", e); out.write("<script type=\"text/javascript\">" + "top.wso2.wsf.Util.alertWarning('File upload FAILED. File may be non-existent or invalid.');" + "</script>"); } finally { out.close(); } return true; }