List of usage examples for org.apache.commons.fileupload FileUploadException printStackTrace
public void printStackTrace()
From source file:org.openremote.modeler.utils.MultipartFileUtil.java
@SuppressWarnings("unchecked") public static MultipartFile getMultipartFileFromRequest(HttpServletRequest request, String fileFieldName) { MultipartFile multipartFile = null;//www .j av a 2 s. c o m FileItemFactory factory = new DiskFileItemFactory(); ServletFileUpload upload = new ServletFileUpload(factory); List items = null; try { items = upload.parseRequest(request); } catch (FileUploadException e) { LOGGER.error("get InputStream from httpServletRequest error.", e); e.printStackTrace(); } if (items == null) { return null; } Iterator it = items.iterator(); FileItem fileItem = null; while (it.hasNext()) { fileItem = (FileItem) it.next(); if (!fileItem.isFormField() && fileFieldName != null && fileFieldName.equals(fileItem.getFieldName())) { break; } } if (fileItem != null) { multipartFile = new CommonsMultipartFile(fileItem); } return multipartFile; }
From source file:org.oryxeditor.server.StencilSetExtensionGeneratorServlet.java
/** * Request parameters are documented in//from ww w . ja v a2s. c om * editor/test/examples/stencilset-extension-generator.xhtml * The parameter 'csvFile' is always required. * An example CSV file can be found in * editor/test/examples/design-thinking-example-data.csv * which has been exported using OpenOffice.org from * editor/test/examples/design-thinking-example-data.ods */ protected void doPost(HttpServletRequest request, HttpServletResponse response) { this.request = request; this.response = response; this.baseUrl = Repository.getBaseUrl(request); this.repository = new Repository(baseUrl); // parameters and their default values String modelNamePrefix = "Generated Model using "; String stencilSetExtensionNamePrefix = StencilSetExtensionGenerator.DEFAULT_STENCIL_SET_EXTENSION_NAME_PREFIX; String baseStencilSetPath = StencilSetExtensionGenerator.DEFAULT_BASE_STENCIL_SET_PATH; String baseStencilSet = StencilSetExtensionGenerator.DEFAULT_BASE_STENCIL_SET; String baseStencil = StencilSetExtensionGenerator.DEFAULT_BASE_STENCIL; List<String> stencilSetExtensionUrls = new ArrayList<String>(); String[] columnPropertyMapping = null; String[] csvHeader = null; List<Map<String, String>> stencilPropertyMatrix = new ArrayList<Map<String, String>>(); String modelDescription = "The initial version of this model has been created by the Stencilset Extension Generator."; String additionalERDFContentForGeneratedModel = ""; String[] modelTags = null; // Check that we have a file upload request boolean isMultipart = ServletFileUpload.isMultipartContent(request); if (isMultipart) { // Create a new file upload handler ServletFileUpload upload = new ServletFileUpload(); // Parse the request FileItemIterator iterator; try { iterator = upload.getItemIterator(request); while (iterator.hasNext()) { FileItemStream item = iterator.next(); String name = item.getFieldName(); InputStream stream = item.openStream(); if (item.isFormField()) { // ordinary form field String value = Streams.asString(stream); //System.out.println("Form field " + name + " with value " // + value + " detected."); if (name.equals("modelNamePrefix")) { modelNamePrefix = value; } else if (name.equals("stencilSetExtensionNamePrefix")) { stencilSetExtensionNamePrefix = value; } else if (name.equals("baseStencilSetPath")) { baseStencilSetPath = value; } else if (name.equals("baseStencilSet")) { baseStencilSet = value; } else if (name.equals("stencilSetExtension")) { stencilSetExtensionUrls.add(value); } else if (name.equals("baseStencil")) { baseStencil = value; } else if (name.equals("columnPropertyMapping")) { columnPropertyMapping = value.split(","); } else if (name.equals("modelDescription")) { modelDescription = value; } else if (name.equals("modelTags")) { modelTags = value.split(","); } else if (name.equals("additionalERDFContentForGeneratedModel")) { additionalERDFContentForGeneratedModel = value; } } else { // file field //System.out.println("File field " + name + " with file name " // + item.getName() + " detected."); // Process the input stream if (name.equals("csvFile")) { CsvMapReader csvFileReader = new CsvMapReader(new InputStreamReader(stream), CsvPreference.EXCEL_PREFERENCE); csvHeader = csvFileReader.getCSVHeader(true); if (columnPropertyMapping != null && columnPropertyMapping.length > 0) { csvHeader = columnPropertyMapping; } Map<String, String> row; while ((row = csvFileReader.read(csvHeader)) != null) { stencilPropertyMatrix.add(row); } } } } // generate stencil set Date creationDate = new Date(System.currentTimeMillis()); DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH-mm-ss.SSS"); String stencilSetExtensionName = stencilSetExtensionNamePrefix + " " + dateFormat.format(creationDate); stencilSetExtensionUrls .add(StencilSetExtensionGenerator.generateStencilSetExtension(stencilSetExtensionName, stencilPropertyMatrix, columnPropertyMapping, baseStencilSet, baseStencil)); // generate new model String modelName = modelNamePrefix + stencilSetExtensionName; String model = repository.generateERDF(UUID.randomUUID().toString(), additionalERDFContentForGeneratedModel, baseStencilSetPath, baseStencilSet, stencilSetExtensionUrls, modelName, modelDescription); String modelUrl = baseUrl + repository.saveNewModel(model, modelName, modelDescription, baseStencilSet, baseStencilSetPath); // hack for reverse proxies: modelUrl = modelUrl.substring(modelUrl.lastIndexOf("http://")); // tag model if (modelTags != null) { for (String tagName : modelTags) { repository.addTag(modelUrl, tagName.trim()); } } // redirect client to editor with that newly generated model response.setHeader("Location", modelUrl); response.setStatus(HttpServletResponse.SC_MOVED_PERMANENTLY); } catch (FileUploadException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } else { // TODO Add some error message } }
From source file:org.oryxeditor.server.TBPMServlet.java
protected void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException { res.setContentType("text/html"); res.setStatus(200);//from w w w . j a v a2 s.c o m PrintWriter out = null; try { out = res.getWriter(); } catch (IOException e) { e.printStackTrace(); } // No isMultipartContent => Error final boolean isMultipartContent = ServletFileUpload.isMultipartContent(req); if (!isMultipartContent) { printError(res, "No Multipart Content transmitted."); return; } final FileItemFactory factory = new DiskFileItemFactory(); final ServletFileUpload servletFileUpload = new ServletFileUpload(factory); servletFileUpload.setSizeMax(-1); try { final List<?> items = servletFileUpload.parseRequest(req); final FileItem fileItem = (FileItem) items.get(0); final String fileName = fileItem.getName(); if (!(fileName.endsWith(".png") || fileName.endsWith(".jpg") || fileName.endsWith(".JPG"))) { printError(res, "No file with .png or .jpg extension uploaded."); return; } String response = this.processUploadedFile(fileItem); out.write(response); } catch (FileUploadException e1) { e1.printStackTrace(); } }
From source file:org.pentaho.platform.web.refactor.SolutionManagerUIComponent.java
public Document doFileUpload() { String baseUrl = PentahoSystem.getApplicationContext() .getSolutionPath(SolutionManagerUIComponent.EMPTY_STR); ISolutionRepository repository = PentahoSystem.get(ISolutionRepository.class, session); String path = this.getParameter(SolutionManagerUIComponent.PATH_STR, null); IParameterProvider request = (IParameterProvider) getParameterProviders() .get(IParameterProvider.SCOPE_REQUEST); HttpServletRequest httpRequest = ((HttpRequestParameterProvider) request).getRequest(); /* /*from w w w.j a v a2s. c o m*/ String contentType = httpRequest.getContentType(); if ((contentType == null) || ((contentType.indexOf("multipart/form-data") < 0) && (contentType.indexOf("multipart/mixed stream") < 0))) { //$NON-NLS-1$ //$NON-NLS-2$ return doGetSolutionStructure(); } DiskFileUpload uploader = new DiskFileUpload(); */ if (!ServletFileUpload.isMultipartContent(httpRequest)) { return doGetSolutionStructure(); } ServletFileUpload uploader = new ServletFileUpload(new DiskFileItemFactory()); try { List fileList = uploader.parseRequest(httpRequest); Iterator iter = fileList.iterator(); while (iter.hasNext()) { FileItem fi = (FileItem) iter.next(); // Check if not form field so as to only handle the file inputs if (!fi.isFormField()) { File tempFileRef = new File(fi.getName()); repository.addSolutionFile(baseUrl, path, tempFileRef.getName(), fi.get(), true); SolutionManagerUIComponent.logger .info(Messages.getString("SolutionManagerUIComponent.INFO_0001_FILE_SAVED") + path + "/" //$NON-NLS-1$//$NON-NLS-2$ + tempFileRef.getName()); } } } catch (FileUploadException e) { SolutionManagerUIComponent.logger.error(e.toString()); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } return doGetSolutionStructure(); }
From source file:org.pentaho.platform.web.servlet.RepositoryFilePublisher.java
@Override protected void doGet(final HttpServletRequest request, final HttpServletResponse response) throws ServletException, IOException { PentahoSystem.systemEntryPoint();/*from w w w . j a v a 2s .co m*/ try { response.setCharacterEncoding(LocaleHelper.getSystemEncoding()); IPentahoSession pentahoSession = PentahoSessionHolder.getSession(); String publishPath = request.getParameter("publishPath"); //$NON-NLS-1$ String publishKey = request.getParameter("publishKey");//$NON-NLS-1$ String jndiName = request.getParameter("jndiName");//$NON-NLS-1$ String jdbcDriver = request.getParameter("jdbcDriver");//$NON-NLS-1$ String jdbcUrl = request.getParameter("jdbcUrl");//$NON-NLS-1$ String jdbcUserId = request.getParameter("jdbcUserId");//$NON-NLS-1$ String jdbcPassword = request.getParameter("jdbcPassword");//$NON-NLS-1$ boolean overwrite = Boolean.valueOf(request.getParameter("overwrite")).booleanValue(); //$NON-NLS-1$ boolean mkdirs = Boolean.valueOf(request.getParameter("mkdirs")).booleanValue(); //$NON-NLS-1$ List<FileItem> fileItems = Collections.emptyList(); try { fileItems = getFileItems(request); } catch (FileUploadException e) { e.printStackTrace(); if (RepositoryFilePublisher.logger.isErrorEnabled()) { RepositoryFilePublisher.logger.error("an exception occurred", e); } response.getWriter().println(ISolutionRepository.FILE_ADD_FAILED); return; } int status = doPublish(fileItems, publishPath, publishKey, jndiName, jdbcDriver, jdbcUrl, jdbcUserId, jdbcPassword, overwrite, mkdirs, pentahoSession); response.getWriter().println(status); } finally { PentahoSystem.systemExitPoint(); } }
From source file:org.silverpeas.mobile.server.servlets.MediaServlet.java
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String componentId = ""; String albumId = ""; String tempDir = MediaHelper.getTemporaryUploadMediaPath(); // configures upload settings DiskFileItemFactory factory = new DiskFileItemFactory(); // sets memory threshold - beyond which files are stored in disk factory.setSizeThreshold(MEMORY_THRESHOLD); // sets temporary location to store files factory.setRepository(new File(tempDir)); ServletFileUpload upload = new ServletFileUpload(factory); // sets maximum size of upload file upload.setFileSizeMax(MAX_FILE_SIZE); // sets maximum size of request (include file + form data) upload.setSizeMax(MAX_REQUEST_SIZE); // Parse the request @SuppressWarnings("unchecked") List<FileItem> items = null; try {// www .ja v a 2 s .c om items = upload.parseRequest(request); } catch (FileUploadBase.FileSizeLimitExceededException eu) { response.sendError(HttpServletResponse.SC_REQUEST_ENTITY_TOO_LARGE); return; } catch (FileUploadException e) { e.printStackTrace(); } // Process the uploaded items Iterator iter = items.iterator(); while (iter.hasNext()) { FileItem item = (FileItem) iter.next(); if (item.isFormField()) { if (item.getFieldName().equals("componentId")) componentId = item.getString(); if (item.getFieldName().equals("albumId")) albumId = item.getString(); } else { String fileName = item.getName(); File file = new File(tempDir + File.separator + fileName); try { item.write(file); createMedia(request, response, fileName, getUserInSession(request).getId(), componentId, albumId, file, false, "", "", true); } catch (Exception e) { e.printStackTrace(); } } } }
From source file:org.tolven.ajax.DocServlet.java
@Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // Create a factory for disk-based file items DiskFileItemFactory factory = new DiskFileItemFactory(); factory.setSizeThreshold(4096);/*w ww . j a va 2 s . c o m*/ // Create a new file upload handler ServletFileUpload upload = new ServletFileUpload(factory); Writer writer = response.getWriter(); // Parse the request String returnTo = null; try { List<FileItem> items = upload.parseRequest(request); long id = 0; for (FileItem item : items) { if (item.isFormField()) { String name = item.getFieldName(); String value = item.getString(); if ("returnTo".equals(name)) returnTo = value; } else { String contentType = item.getContentType(); boolean isInMemory = item.isInMemory(); // TODO less than int bytes int sizeInBytes = (int) item.getSize(); AccountUser accountUser = TolvenRequest.getInstance().getAccountUser(); DocBase doc = docBean.createNewDocument(contentType, "", accountUser); // Get the logged in user and set as the author Object obj = request.getSession().getAttribute(GeneralSecurityFilter.ACCOUNT_ID); if (obj == null) throw new IllegalStateException(getClass() + ": Session ACCOUNT_ID is null"); obj = request.getSession().getAttribute(GeneralSecurityFilter.TOLVENUSER_ID); if (obj == null) throw new IllegalStateException(getClass() + ": Session TOLVENUSER_ID is null"); String kbeKeyAlgorithm = propertyBean.getProperty(DocumentSecretKey.DOC_KBE_KEY_ALGORITHM_PROP); int kbeKeyLength = Integer .parseInt(propertyBean.getProperty(DocumentSecretKey.DOC_KBE_KEY_LENGTH)); if (isInMemory) { doc.setAsEncryptedContent(item.get(), kbeKeyAlgorithm, kbeKeyLength); } else { InputStream uploadedStream = item.getInputStream(); byte[] b = new byte[sizeInBytes]; uploadedStream.read(b); doc.setAsEncryptedContent(b, kbeKeyAlgorithm, kbeKeyLength); uploadedStream.close(); } docBean.finalizeDocument(doc); } // writer.write( "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<html>\n" + writer.write("<html>\n" + "<head>" + (returnTo == null ? " " : "<meta http-equiv=\"refresh\" content=\"0; url=" + returnTo + "\"/>") + "</head><body>\n" + id + "\n</body>\n</html>\n"); } } catch (FileUploadException e) { response.sendError(HttpServletResponse.SC_BAD_REQUEST); e.printStackTrace(); } finally { request.setAttribute("activeWriter", writer); // writer.close(); } }
From source file:org.trianacode.TrianaCloud.Broker.Broker.java
public void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { logger.info("Broker received a request."); String pathInfo = isolatePath(request); String content = ""; if (!pathInfo.equalsIgnoreCase("")) { logger.info("Unknown Endpoint"); write404Error(response, "Unknown endpoint"); return;// w w w. j a v a 2 s. c o m } try { byte[] data = null; String r_key = ""; String fname = ""; String name = ""; int numTasks = 0; StringBuilder s = new StringBuilder(); 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(); if (fieldname.equalsIgnoreCase("task")) { s.append(fieldvalue); } if (fieldname.equalsIgnoreCase("routingkey")) { r_key = fieldvalue; } if (fieldname.equalsIgnoreCase("numtasks")) { numTasks = Integer.parseInt(fieldvalue); } if (fieldname.equalsIgnoreCase("name")) { name = fieldvalue; } } else { // Process form file field (input type="file"). String fieldname = item.getFieldName(); String filename = FilenameUtils.getName(item.getName()); // ... (do your job here) fname = filename; InputStream is = item.getInputStream(); long length = item.getSize(); if (length > Integer.MAX_VALUE) { // File is too large throw new Exception("File too large"); } // Create the byte array to hold the data byte[] bytes = new byte[(int) length]; // Read in the bytes int offset = 0; int numRead = 0; while (offset < bytes.length && (numRead = is.read(bytes, offset, bytes.length - offset)) >= 0) { offset += numRead; } // Ensure all the bytes have been read in if (offset < bytes.length) { throw new IOException("Could not completely read file " + length); } data = bytes; } } } catch (FileUploadException e) { logger.error("Cannot parse multipart request."); throw new ServletException("Cannot parse multipart request.", e); } List<String> UUIDList = new ArrayList<String>(); log.debug(content); for (int i = 0; i < numTasks; i++) { Task t = new Task(); t.setData(data); t.setDataMD5(MD5.getMD5Hash(data)); t.setDataType("binary"); t.setName(name); t.setFileName(fname); t.setOrigin("Broker"); t.setDispatchTime(System.currentTimeMillis()); t.setRoutingKey(r_key); t.setUUID(UUID.randomUUID().toString()); insertTask(t); UUIDList.add(t.getUUID()); } StringBuilder sb = new StringBuilder(); for (String id : UUIDList) { sb.append(id + "\n"); } //String ret = "Ok; ///TODO:do some stuff here writeResponse(response, 200, "Success", sb.toString()); List<Task> t = td.list(); for (Task ta : t) { System.out.println(ta.getDispatchTime() + " " + ta.getState()); } } catch (Exception e) { e.printStackTrace(); log.error(e); StringBuffer stack = new StringBuffer("Error: " + e.getMessage() + "<br/>"); StackTraceElement[] trace = e.getStackTrace(); for (StackTraceElement element : trace) { stack.append(element.toString()).append("<br/>"); } writeError(response, 500, stack.toString()); } catch (Throwable t) { writeThrowable(response, t); } }
From source file:org.vosao.servlet.FormSendServlet.java
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String message = null;/*w ww.java2 s . c o m*/ Map<String, String> parameters = new HashMap<String, String>(); List<FileItem> files = new ArrayList<FileItem>(); try { if (request.getContentType().startsWith("multipart/form-data")) { ServletFileUpload upload = new ServletFileUpload(); upload.setFileSizeMax(MAX_SIZE); upload.setHeaderEncoding("UTF-8"); FileItemIterator iter; try { iter = upload.getItemIterator(request); InputStream stream = null; while (iter.hasNext()) { FileItemStream item = iter.next(); stream = item.openStream(); if (item.isFormField()) { parameters.put(item.getFieldName(), Streams.asString(stream, "UTF-8")); } else { files.add(new FileItem(item, StreamUtil.readFileStream(stream))); } } } catch (FileUploadException e) { logger.error(e.getMessage()); throw new UploadException(Messages.get("request_parsing_error")); } } else { for (Object key : request.getParameterMap().keySet()) { String paramName = (String) key; parameters.put(paramName, request.getParameter(paramName)); } } message = processForm(parameters, files, request); } catch (UploadException e) { message = createMessage("error", e.getMessage()); logger.error(message); } catch (Exception e) { message = createMessage("error", e.getMessage()); logger.error(message); e.printStackTrace(); } response.setContentType("text/html"); response.setCharacterEncoding("UTF-8"); response.setStatus(200); response.getWriter().write(message); }
From source file:org.vuphone.vandyupon.media.incoming.event.ImageParser.java
public Notification parse(HttpServletRequest req) { if (req.getParameter("type").equalsIgnoreCase("eventimagepost")) { //get data from request String response = null;//from w w w .j av a 2 s . c om String callback = null; long time, eventId = 0; time = System.currentTimeMillis(); byte[] imageData = null; eventId = Long.parseLong(req.getParameter(EVENTID)); response = req.getParameter("resp"); callback = req.getParameter("callback"); if (ServletFileUpload.isMultipartContent(req)) { //process the multipart request File temp = new File("/temp"); if (!temp.exists()) { temp.mkdir(); } DiskFileItemFactory factory = new DiskFileItemFactory(5000000, temp); ServletFileUpload ul = new ServletFileUpload(factory); Iterator iter = null; HashMap<String, String> params = new HashMap<String, String>(); try { iter = ul.parseRequest(req).iterator(); while (iter.hasNext()) { FileItem item = (FileItem) iter.next(); if (item.isFormField()) params.put(item.getFieldName(), item.getString()); else //file upload imageData = item.get(); } } catch (FileUploadException e) { e.printStackTrace(); return null; } } else { eventId = Long.parseLong(req.getParameter(EVENTID)); response = req.getParameter("resp"); callback = req.getParameter("callback"); imageData = new byte[req.getContentLength() + 1]; try { ServletInputStream sis = req.getInputStream(); int read = 0; int readSoFar = 0; while ((read = sis.read(imageData, readSoFar, imageData.length - readSoFar)) != -1) { readSoFar += read; //logger_.log(Level.SEVERE, "Read " + String.valueOf(read) + " bytes this time. So Far " + String.valueOf(readSoFar)); } } catch (IOException excp) { logger_.log(Level.SEVERE, "Got IOException:" + excp.getMessage()); } } ImageNotification in = new ImageNotification(); in.setEventId(eventId); in.setTime(time); in.setBytes(imageData); in.setResponseType(response); in.setCallback(callback); return in; } else { return null; } }