List of usage examples for org.apache.commons.fileupload.servlet ServletFileUpload setSizeMax
public void setSizeMax(long sizeMax)
From source file:sif.servlet.Request.java
Request(Servlet srv, HttpServletRequest req, HttpServletResponse resp) { servlet = srv;/*from w ww. ja v a 2 s .c o m*/ request = req; response = resp; session = getSessionState(null).sessionPrincipal(); bnd = Servlet.getOutputChannelBound(this); this.isMultipart = FileUploadBase.isMultipartContent(req); if (!isMultipart) { parameterMap = req.getParameterMap(); } else { parameterMap = new HashMap<String, String>(); fileMap = new HashMap<String, FileItem>(); // Create a factory for disk-based file items FileItemFactory factory = new DiskFileItemFactory(); // Create a new file upload handler ServletFileUpload upload = new ServletFileUpload(factory); // set the maximum upload size to 100 kB upload.setSizeMax(100 * 1024); // Parse the request try { List<FileItem> items = upload.parseRequest(request); for (FileItem element : items) { FileItem item = element; if (item.isFormField()) { parameterMap.put(item.getFieldName(), item.getString()); } else { // put the item into the fileMap fileMap.put(item.getFieldName(), item); } } } catch (FileUploadException e) { e.printStackTrace(); } } }
From source file:sipl.servlets.FileUploadServlet.java
/** * Upon receiving file upload submission, parses the request to read upload * data and saves the file on disk.// w w w . j av a2s. c o m */ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // checks if the request actually contains upload file if (!ServletFileUpload.isMultipartContent(request)) { // if not, we stop here PrintWriter writer = response.getWriter(); writer.println("Error: Form must has enctype=multipart/form-data."); writer.flush(); return; } // 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(System.getProperty("java.io.tmpdir"))); 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); // constructs the directory path to store upload file // this path is relative to application's directory Conexion con = new Conexion(); variableSisDAO varDAO = new variableSisDAO(con); VariableSis var = varDAO.getTipo_variable(1); String dir = var.getDatos(); // String uploadPath = getServletContext().getRealPath("") // + File.separator + UPLOAD_DIRECTORY; String uploadPath = dir + UPLOAD_DIRECTORY; // creates the directory if it does not exist File uploadDir = new File(uploadPath); if (!uploadDir.exists()) { uploadDir.mkdir(); } try { // parses the request's content to extract file data @SuppressWarnings("unchecked") List<FileItem> formItems = upload.parseRequest(request); if (formItems != null && formItems.size() > 0) { // iterates over form's fields for (FileItem item : formItems) { // processes only fields that are not form fields if (!item.isFormField()) { String fileName = new File(item.getName()).getName(); nombre = fileName; String filePath = uploadPath + File.separator + fileName; File storeFile = new File(filePath); item.write(storeFile); request.setAttribute("message", "Upload has been done successfully!"); request.setAttribute("foto", nombre); } } } } catch (Exception ex) { request.setAttribute("message", "There was an error: " + ex.getMessage()); } // redirects client to message page getServletContext().getRequestDispatcher("/uploadImagen.jsp?accion=1").forward(request, response); }
From source file:src.servlets.ManagePropertys.java
/** * Handles the HTTP <code>POST</code> method. * * @param request servlet request/*from ww w .j a va2 s.com*/ * @param response servlet response * @throws ServletException if a servlet-specific error occurs * @throws IOException if an I/O error occurs */ @Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // //set date format // DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd"); // //get current date time with Date() // //Date date2 = new Date(); // //System.out.println(dateFormat.format(date2)); // // // // //get current date time with Calendar() // Calendar cal = Calendar.getInstance(); // System.out.println(dateFormat.format(cal.getTime())); // setup values Agents LoggedIn = null; try { LoggedIn = AgentsDB.getByUsername(request.getUserPrincipal().getName()); //request.setAttribute("agent", agent); } //end try catch (Exception ex) { //address = "/Error.jsp"; } int agentIdfromDB = 0; agentIdfromDB = LoggedIn.getAgentId(); Integer id = 0; String street = ""; String city = ""; Integer listingNum = 0; Integer styleId = 0; Integer typeId = 0; Integer bedrooms = 0; Float bathrooms = null; Integer squarefeet = 0; String description = ""; String lotsize = ""; Short garageSize = (short) 0; Integer garageId = 0; Integer agentId = agentIdfromDB;// Need to get ID from Session when created! Date dateAdded = null; String photo;//= request.getParameter("photo"); Double price = 0.0; List<FileItem> formItems2 = null; ////////////////// // if (!ServletFileUpload.isMultipartContent(request) && id!=0) { // // if not, we stop here // PrintWriter writer = response.getWriter(); // writer.println("Error: Form must has enctype=multipart/form-data."); // writer.flush(); // return; // } // 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(System.getProperty("java.io.tmpdir"))); 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); // constructs the directory path to store upload file // this path is relative to application's directory String uploadPath = getServletContext().getRealPath("") + File.separator + UPLOAD_DIRECTORY; // creates the directory if it does not exist File uploadDir = new File(uploadPath); if (!uploadDir.exists()) { uploadDir.mkdir(); } // Check file Extention @SuppressWarnings("unchecked") List<FileItem> formItems = null; String fileNameExt = ""; try { formItems = upload.parseRequest(request); formItems2 = formItems; } catch (FileUploadException ex) { Logger.getLogger(ManagePropertys.class.getName()).log(Level.SEVERE, null, ex); } if (formItems != null && formItems.size() > 0) { // iterates over form's fields for (FileItem item : formItems) { // processes only fields that are not form fields if (!item.isFormField()) { fileNameExt = new File(item.getName()).getName(); } if (item.getFieldName().equals("street")) { street = item.getString(); } if (item.getFieldName().equals("city")) { city = item.getString(); } if (item.getFieldName().equals("listingNum")) { listingNum = Integer.parseInt(item.getString()); } if (item.getFieldName().equals("styleId")) { styleId = Integer.parseInt(item.getString()); } if (item.getFieldName().equals("typeId")) { typeId = Integer.parseInt(item.getString()); } if (item.getFieldName().equals("bedrooms")) { bedrooms = Integer.parseInt(item.getString()); } if (item.getFieldName().equals("bathrooms")) { bathrooms = Float.parseFloat(item.getString()); } if (item.getFieldName().equals("squarefeet")) { squarefeet = Integer.parseInt(item.getString()); } if (item.getFieldName().equals("description")) { description = item.getString(); } if (item.getFieldName().equals("lotsize")) { lotsize = item.getString(); } if (item.getFieldName().equals("garageId")) { garageId = Integer.parseInt(item.getString()); } if (item.getFieldName().equals("garageSize")) { garageSize = Short.parseShort(item.getString()); } if (item.getFieldName().equals("price")) { price = Double.parseDouble(item.getString()); } if (item.getFieldName().equals("id")) { id = Integer.parseInt(item.getString()); } // if(item.getFieldName().equals("dateAdded")) // { // dateAdded = Date.valueOf(item.getString()); // } if (item.getFieldName().equals("photo")) { photo = item.getString(); } if (request.isUserInRole("admin")) { if (item.getFieldName().equals("agentId")) { agentId = Integer.parseInt(item.getString()); } } } } if (!ServletFileUpload.isMultipartContent(request) && id == 0) { // if not, we stop here PrintWriter writer = response.getWriter(); writer.println("Error: Form must has enctype=multipart/form-data."); writer.flush(); return; } /////// String fileNameToLowerCase = fileNameExt.toLowerCase(); String fileExtension; if (fileNameToLowerCase.contains(".")) { fileExtension = fileNameToLowerCase.substring(fileNameToLowerCase.indexOf(".") + 1, fileNameToLowerCase.length()); } else { fileExtension = ""; } if (!fileExtension.equals("png") && !fileExtension.equals("jpg") && !fileExtension.equals("jpeg") && !fileExtension.equals("gif") && !fileExtension.equals("bmp") && id == 0) { PrintWriter writer = response.getWriter(); writer.println("Error: File must be one of the following formats only. (png,jpg,gif,bmp,jpeg)"); writer.flush(); return; } //////////////// String address = ""; //Setup new property Properties newProperty = new Properties(); newProperty.setStreet(street); newProperty.setCity(city); newProperty.setListingNum(listingNum); newProperty.setStyleId(styleId); newProperty.setTypeId(typeId); newProperty.setBedrooms(bedrooms); newProperty.setBathrooms(bathrooms); newProperty.setSquarefeet(squarefeet); newProperty.setDescription(description); newProperty.setLotsize(lotsize); newProperty.setGaragesize(garageSize); newProperty.setGarageId(garageId); newProperty.setAgentId(agentId); newProperty.setPrice(price); newProperty.setDateAdded(new java.sql.Date(System.currentTimeMillis())); if (id != 0) { if (fileExtension != "") { newProperty.setPhoto(id + "." + fileExtension); } newProperty.setListingNum(id); newProperty.setId(id); PropertiesDB.updateProperty(newProperty); } else { id = PropertiesDB.insertProperty(newProperty); newProperty.setPhoto(id + "." + fileExtension); newProperty.setListingNum(id); PropertiesDB.updateProperty(newProperty); } try { // parses the request's content to extract file data //@SuppressWarnings("unchecked") //List<FileItem> formItems = upload.parseRequest(request); if (formItems2 != null && formItems2.size() > 0) { // iterates over form's fields for (FileItem item : formItems2) { // processes only fields that are not form fields if (!item.isFormField()) { if (fileExtension != "") { String fileName = id + "." + fileExtension; String filePath = uploadPath + File.separator + "large" + File.separator + fileName; String filePathThumbnail = uploadPath + File.separator + "thumbnails" + File.separator + fileName; File storeFileThumbnail = new File(filePathThumbnail); File storeFile = new File(filePath); item.write(storeFile); //Thumnail library used for resizing of both images Thumbnails.of(storeFile).size(409, 307).toFile(storeFile);//Resize Main Image with current ratio maintained. (Required before using force size on larger images) Thumbnails.of(storeFile).forceSize(409, 307).toFile(storeFile);//Resize Main Image forcing size of 409x307 Thumbnails.of(storeFile).forceSize(75, 56).toFile(storeFileThumbnail);// create thumbnail of 75x56 request.setAttribute("Status", "This Property Has Been saved successfully!"); address = "ManagePropertys?GetProperties&Status=1"; } ////THIS IS HOW TO DELETE///// // storeFile.delete(); // storeFileThumbnail.delete(); ////THIS IS HOW TO DELETE///// } else { request.setAttribute("Status", "This Property Has Been Updated successfully!"); address = "ManagePropertys?GetProperties&Status=1"; } } } } catch (Exception ex) { address = "/Error.jsp"; } //end catch response.sendRedirect("/RealtyWebsite/" + address); // RequestDispatcher dispatcher = request.getRequestDispatcher(address); // dispatcher.forward(request, response); processRequest(request, response); }
From source file:stellr.util.stores.admin.FileUploadServlet.java
/** * handles file upload//from w ww . jav a 2 s. c o m * * @param request * @param response * @throws javax.servlet.ServletException * @throws java.io.IOException */ @Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //Clear current rowdata this.rowData = null; this.colData = null; System.gc(); // Check that we have a file upload request isMultipart = ServletFileUpload.isMultipartContent(request); if (!isMultipart) { System.out.println("Not file Exception Upload"); return; } DiskFileItemFactory factory = new DiskFileItemFactory(); FileItem fileIn; // maximum size that will be stored in memory factory.setSizeThreshold(maxMemSize); // Create a new file upload handler ServletFileUpload upload = new ServletFileUpload(factory); // maximum file size to be uploaded. upload.setSizeMax(maxFileSize); try { // Parse the request to get file items. List fileItems = upload.parseRequest(request); // Process the uploaded file items Iterator i = fileItems.iterator(); while (i.hasNext()) { fileIn = (FileItem) i.next(); if (!fileIn.isFormField()) { // Get the uploaded file parameters String fileName = fileIn.getName(); try { String str = fileIn.getString(); //Rows String[] arr = str.split("\n\\s*(?=([^\"]*\"[^\"]*\")*[^\"]*$)"); //Rows Initialize String[][] csv = new String[arr.length][]; //Split csv data for rows and columns for (int r = 0; r < arr.length; r++) { String[] tmpRowData = arr[r].split(",\\s*(?=([^\"]*\"[^\"]*\")*[^\"]*$)"); //Add column infront String[] addColData = new String[tmpRowData.length + 1]; addColData[0] = Boolean.FALSE.toString(); try { //Copy Row Column Celldata to new Array Row for datatable //Data should now have a new column in the front saying FALSE, used for is header tick box int cdidx = 1; for (String colCellData : tmpRowData) { addColData[cdidx++] = colCellData; } csv[r] = addColData; } catch (Exception e12) { csv[r] = arr[r].split(",\\s*(?=([^\"]*\"[^\"]*\")*[^\"]*$)"); } } //Setup new rowdata for datatable setRowData(new ArrayList<>()); //Add Header Row for (int x = 0; x < 1; x++) { //Create String array with one extra cell for is header checkbox //Initialise column header data setColData(new ArrayList(Arrays.asList(new String[csv[x].length]))); //Add first empty row to Row Data getRowData().add(getColData()); } //Add DataRows from CSV for (String[] csvRow : csv) { //Add Each row from CSV as Row Data getRowData().add((ArrayList<String>) (new ArrayList(Arrays.asList(csvRow)))); } } catch (Exception e) { System.out.println(" File Write Exception e " + e.getMessage()); Throwable cause = e.getCause(); String msg = ""; if (cause != null) { msg = cause.getLocalizedMessage(); } Logger.getLogger(FileUploadServlet.class.getName()).log(Level.SEVERE, null, e); } } } } catch (Exception ex) { System.out.println("DoPost Ex " + ex); } }
From source file:SubirArchivoJSP.subirarchivojsp.java
/** * Processes requests for both HTTP <code>GET</code> and <code>POST</code> * methods./*from w w w .j av a 2 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 { response.setContentType("text/html;charset=UTF-8"); try (PrintWriter out = response.getWriter()) { /* TODO output your page here. You may use following sample code. */ /* TODO output your page here. You may use following sample code. */ dir = getServletContext().getRealPath("/SubirArchivoJSP/img"); HttpServletRequest respuesta = request; if (ServletFileUpload.isMultipartContent(request)) { FileItemFactory factory = new DiskFileItemFactory(); ServletFileUpload upload = new ServletFileUpload(factory); upload.setSizeMax(5000 * 1024); // bytes List listUploadFiles = null; FileItem item = null; try { listUploadFiles = upload.parseRequest(request); Iterator it = listUploadFiles.iterator(); while (it.hasNext()) { item = (FileItem) it.next(); if (!item.isFormField()) { if (item.getSize() > 0) { nombre = item.getName(); File archivo = new File(dir, nombre); item.write(archivo); if (archivo.exists()) { out.println("GUARDADO " + archivo.getAbsolutePath() + "</p>"); } else { // nunca se llega a ejecutar out.println( "FALLO AL GUARDAR. NO EXISTE " + archivo.getAbsolutePath() + "</p>"); } } } else { // es un campo de formulario, podemos obtener clave y valor String key = item.getFieldName(); String valor = item.getString(); respuesta.setAttribute(key, valor); } } } catch (FileUploadException e) { out.println("Demasiado grande! <br>"); e.printStackTrace(); } catch (Exception e) { out.println("Ha ocurrido un error! <br>"); e.printStackTrace(); } } respuesta.setAttribute("foto", "/Servlet1/SubirArchivoJSP/img/" + nombre); out.print("hola"); RequestDispatcher vista = request.getServletContext() .getRequestDispatcher("/SubirArchivoJSP/vista.jsp"); vista.forward(respuesta, response); } }
From source file:SubirArchivoServlet.subirarchivo.java
/** * Processes requests for both HTTP <code>GET</code> and <code>POST</code> * methods./* w ww .j a v a 2 s .c om*/ * * @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. */ out.println("<!DOCTYPE html>"); out.println("<html>"); out.println("<head>"); out.println("<title>Servlet subirarchivo</title>"); out.println("</head>"); out.println("<body>"); dir = getServletContext().getRealPath("/SubirArchivoServlet/img"); out.println(dir + "<br>"); if (ServletFileUpload.isMultipartContent(request)) { FileItemFactory factory = new DiskFileItemFactory(); ServletFileUpload upload = new ServletFileUpload(factory); upload.setSizeMax(5000 * 1024); // bytes List listUploadFiles = null; FileItem item = null; try { listUploadFiles = upload.parseRequest(request); Iterator it = listUploadFiles.iterator(); while (it.hasNext()) { item = (FileItem) it.next(); if (!item.isFormField()) { if (item.getSize() > 0) { nombre = item.getName(); File archivo = new File(dir, nombre); item.write(archivo); if (archivo.exists()) { out.println("GUARDADO " + archivo.getAbsolutePath() + "</p>"); } else { // nunca se llega a ejecutar out.println( "FALLO AL GUARDAR. NO EXISTE " + archivo.getAbsolutePath() + "</p>"); } } } else { // es un campo de formulario, podemos obtener clave y valor String key = item.getFieldName(); String valor = item.getString(); out.println(key + ": " + valor + "<br>"); } } } catch (FileUploadException e) { out.println("Demasiado grande! <br>"); e.printStackTrace(); } catch (Exception e) { out.println("Ha ocurrido un error! <br>"); e.printStackTrace(); } } out.println("<img src='/Servlet1/SubirArchivoServlet/img/" + nombre + "'>"); out.println("<p><a href='index.html'>Ir al Inicio</a></p>"); out.println("</body>"); out.println("</html>"); out.close(); } }
From source file:talend.ext.images.server.ImageUploadServlet.java
private String onUpload(HttpServletRequest request, ImageUploadInfo imageUploadInfo) { try {//w w w . java2 s.co m boolean isMultipart = ServletFileUpload.isMultipartContent(request); if (isMultipart) { DiskFileItemFactory factory = new DiskFileItemFactory(); factory.setSizeThreshold(4096); factory.setRepository(new File(ImageServerInfo.getInstance().getTempPath())); ServletFileUpload sevletFileUpload = new ServletFileUpload(factory); sevletFileUpload.setSizeMax(4 * 1024 * 1024); sevletFileUpload.setHeaderEncoding("utf8"); //$NON-NLS-1$ ProgressListener progressListener = new ProgressListener() { @Override public void update(long pBytesRead, long pContentLength, int pItems) { if (logger.isDebugEnabled()) { logger.debug("We are currently reading item " + pItems); //$NON-NLS-1$ if (pContentLength == -1) { logger.debug("So far, " + pBytesRead + " bytes have been read."); //$NON-NLS-1$//$NON-NLS-2$ } else { logger.debug("So far, " + pBytesRead + " of " + pContentLength //$NON-NLS-1$//$NON-NLS-2$ + " bytes have been read."); //$NON-NLS-1$ } } } }; sevletFileUpload.setProgressListener(progressListener); List<FileItem> fileItems = null; fileItems = sevletFileUpload.parseRequest(request); if (fileItems != null && fileItems.size() > 0) { Object uploadFileItemObj = getFileItem(fileItems, defaultFilefieldName); if (uploadFileItemObj != null) { FileItem uploadFileItem = (FileItem) uploadFileItemObj; Object catalogNameObj = getFileItem(fileItems, defaultCatalogfieldName); if (catalogNameObj != null) { imageUploadInfo.targetCatalogName = (String) catalogNameObj; } Object fileNameObj = getFileItem(fileItems, defaultFileNamefieldName); if (fileNameObj != null) { imageUploadInfo.targetFileShortName = (String) fileNameObj; } else { String name = uploadFileItem.getName(); int pos = name.lastIndexOf('.'); if (pos != -1) { name = name.substring(0, pos); } imageUploadInfo.targetFileShortName = name; } int rtnStatus = processUploadedFile(uploadFileItem, true, imageUploadInfo); if (rtnStatus == 1) { logger.info(imageUploadInfo.sourceFileName + " has been uploaded successfully!"); //$NON-NLS-1$ return buildUploadResult(true, imageUploadInfo.targetUri); } else if (rtnStatus == -1) { String msg = "Unavailable file type! "; //$NON-NLS-1$ logger.error(msg); return buildUploadResult(false, msg); } else if (rtnStatus == -2) { String msg = "Operation rolled back, since backuping to database failed."; //$NON-NLS-1$ logger.error(msg); return buildUploadResult(false, msg); } } } } } catch (SizeLimitExceededException e) { logger.error("File Size Limit Exceeded Exception!", e); //$NON-NLS-1$ return buildUploadResult(false, "File Size Limit Exceeded Exception!"); //$NON-NLS-1$ } catch (Exception e) { logger.error("Exception occured during uploading!", e); //$NON-NLS-1$ return buildUploadResult(false, "Exception occured during uploading!"); //$NON-NLS-1$ } return buildUploadResult(false, "It seems that Upload Task has not been executed, please check your post enctype and post field name!"); //$NON-NLS-1$ }
From source file:tv.dyndns.kishibe.qmaclone.server.IconUploadServletStub.java
private void processRequest(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { logger.log(Level.INFO, request.toString()); FileItemFactory factory = new DiskFileItemFactory(); ServletFileUpload upload = new ServletFileUpload(factory); upload.setSizeMax(64L * 1024L); List<FileItem> items = null; try {/*from ww w . j a va2 s. c o m*/ List<FileItem> temp = upload.parseRequest(request); items = temp; } catch (FileUploadException e) { writeResponse(response, Constant.ICON_UPLOAD_RESPONSE_FAILED_TO_PARSE_REQUEST); return; } String userCode = null; BufferedImage inputImage = null; long originalFileSize = 0; for (FileItem item : items) { if (item.isFormField()) { String key = item.getFieldName(); String value = item.getString(); if (key.equals(Constant.FORM_NAME_USER_CODE)) { userCode = value; } continue; } // ?? originalFileSize = item.getSize(); try (InputStream inputStream = item.getInputStream()) { inputImage = ImageIO.read(inputStream); } catch (IOException e) { writeResponse(response, Constant.ICON_UPLOAD_RESPONSE_FAILED_TO_DETECT_IMAGE_FILE_TYPE); return; } if (inputImage == null) { writeResponse(response, Constant.ICON_UPLOAD_RESPONSE_FAILED_TO_DETECT_IMAGE_FILE_TYPE); return; } } if (userCode == null || inputImage == null) { writeResponse(response, Constant.ICON_UPLOAD_RESPONSE_REQUEST_FORMAT_ERROR); return; } String extension = "jpg"; String fileTitle = Utility.createFileName(); String fileName = fileTitle + "." + extension; // // TODO(nodchip): ? int size = Constant.ICON_SIZE * 2; ImageFilter imageFilter = new AreaAveragingScaleFilter(size, size); Image middleImage = new Canvas().createImage(new FilteredImageSource(inputImage.getSource(), imageFilter)); BufferedImage outputImage = new BufferedImage(size, size, BufferedImage.TYPE_INT_RGB); outputImage.createGraphics().drawImage(middleImage, 0, 0, size, size, null); // ??? new File(Constant.ICON_FOLDER_PATH).mkdirs(); File outputFile = new File(Constant.ICON_FOLDER_PATH, fileName); ImageIO.write(outputImage, "jpg", outputFile); logger.log(Level.INFO, String.format("%d bytes -> %d bytes (%s)", originalFileSize, outputFile.length(), outputFile.getPath())); // ??? int userId = Integer.parseInt(userCode); PacketUserData userData; try { userData = database.getUserData(userId); } catch (DatabaseException e) { logger.log(Level.WARNING, "????????", e); throw new ServletException(e); } File oldFile = new File(Constant.ICON_FOLDER_PATH, userData.imageFileName); if (oldFile.isFile() && !oldFile.getName().equals(Constant.ICON_NO_IMAGE)) { oldFile.delete(); } userData.imageFileName = fileName; try { database.setUserData(userData); } catch (DatabaseException e) { logger.log(Level.WARNING, "???????", e); throw new ServletException(e); } // ???? writeResponse(response, Constant.ICON_UPLOAD_RESPONSE_OK); }
From source file:ubic.gemma.web.util.upload.CommonsMultipartMonitoredResolver.java
@Override public MultipartHttpServletRequest resolveMultipart(HttpServletRequest request) throws MultipartException { String enc = determineEncoding(request); ServletFileUpload fileUpload = this.newFileUpload(request); DiskFileItemFactory newFactory = (DiskFileItemFactory) fileUpload.getFileItemFactory(); fileUpload.setSizeMax(sizeMax); newFactory.setRepository(this.uploadTempDir); fileUpload.setHeaderEncoding(enc);//from w ww . j a v a 2 s. c o m try { MultiValueMap<String, MultipartFile> multipartFiles = new LinkedMultiValueMap<>(); Map<String, String[]> multipartParams = new HashMap<>(); // Extract multipart files and multipart parameters. List<?> fileItems = fileUpload.parseRequest(request); for (Object fileItem1 : fileItems) { FileItem fileItem = (FileItem) fileItem1; if (fileItem.isFormField()) { String value; String fieldName = fileItem.getFieldName(); try { value = fileItem.getString(enc); } catch (UnsupportedEncodingException ex) { logger.warn("Could not decode multipart item '" + fieldName + "' with encoding '" + enc + "': using platform default"); value = fileItem.getString(); } String[] curParam = multipartParams.get(fieldName); if (curParam == null) { // simple form field multipartParams.put(fieldName, new String[] { value }); } else { // array of simple form fields String[] newParam = StringUtils.addStringToArray(curParam, value); multipartParams.put(fieldName, newParam); } } else { // multipart file field MultipartFile file = new CommonsMultipartFile(fileItem); multipartFiles.set(file.getName(), file); if (logger.isDebugEnabled()) { logger.debug("Found multipart file [" + file.getName() + "] of size " + file.getSize() + " bytes with original filename [" + file.getOriginalFilename() + "]"); } } } return new DefaultMultipartHttpServletRequest(request, multipartFiles, multipartParams, null); } catch (FileUploadException ex) { return new FailedMultipartHttpServletRequest(request, ex.getMessage()); } }
From source file:ubic.gemma.web.util.upload.CommonsMultipartMonitoredResolver.java
/** * Create a factory for disk-based file items with a listener we can check for progress. * * @param request request/* w ww . j a v a 2 s .c o m*/ * @return the new FileUpload instance */ protected ServletFileUpload newFileUpload(HttpServletRequest request) { UploadListener listener = new UploadListener(request); DiskFileItemFactory factory = new MonitoredDiskFileItemFactory(listener); ServletFileUpload upload = new ServletFileUpload(factory); factory.setRepository(uploadTempDir); upload.setSizeMax(sizeMax); return upload; }