List of usage examples for org.apache.commons.fileupload.disk DiskFileItemFactory setSizeThreshold
public void setSizeThreshold(int sizeThreshold)
From source file:admin.controller.ServletAddLooks.java
/** * Processes requests for both HTTP <code>GET</code> and <code>POST</code> * methods.//from w w w . j a va 2s . co 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 */ public void processRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { super.processRequest(request, response); String filePath; String fileName, fieldName; Looks look; RequestDispatcher request_dispatcher; String look_name = null; Integer organization_id = 0; boolean check; look = new Looks(); check = false; response.setContentType("text/html;charset=UTF-8"); File file; int maxFileSize = 5000 * 1024; int maxMemSize = 5000 * 1024; try { String uploadPath = AppConstants.LOOK_IMAGES_HOME; // Verify the content type String contentType = request.getContentType(); if ((contentType.indexOf("multipart/form-data") >= 0)) { DiskFileItemFactory factory = new DiskFileItemFactory(); // maximum size that will be stored in memory factory.setSizeThreshold(maxMemSize); // Location to save data that is larger than maxMemSize. factory.setRepository(new File("/tmp")); // Create a new file upload handler ServletFileUpload upload = new ServletFileUpload(factory); // maximum file size to be uploaded. upload.setSizeMax(maxFileSize); // Parse the request to get file items. List fileItems = upload.parseRequest(request); // Process the uploaded file items Iterator i = fileItems.iterator(); while (i.hasNext()) { FileItem fi = (FileItem) i.next(); if (fi.isFormField()) { // Get the uploaded file parameters fieldName = fi.getFieldName(); try { if (fieldName.equals("lookname")) { look_name = fi.getString(); } if (fieldName.equals("organization")) { organization_id = Integer.parseInt(fi.getString()); } } catch (Exception e) { logger.log(Level.SEVERE, "Exception while getting the look_name and organization_id", e); } } else { check = look.checkAvailability(look_name, organization_id); if (check == false) { fieldName = fi.getFieldName(); fileName = fi.getName(); File uploadDir = new File(uploadPath); if (!uploadDir.exists()) { uploadDir.mkdirs(); } // int inStr = fileName.indexOf("."); // String Str = fileName.substring(0, inStr); // // fileName = look_name + "_" + Str + ".png"; fileName = look_name + "_" + fileName; boolean isInMemory = fi.isInMemory(); long sizeInBytes = fi.getSize(); filePath = uploadPath + File.separator + fileName; File storeFile = new File(filePath); fi.write(storeFile); look.addLooks(look_name, fileName, organization_id); response.sendRedirect(request.getContextPath() + "/admin/looks.jsp"); } else { response.sendRedirect(request.getContextPath() + "/admin/looks.jsp?exist=exist"); } } } } else { } } catch (Exception ex) { logger.log(Level.SEVERE, "Exception while uploading the Looks image", ex); } }
From source file:com.aspectran.web.support.multipart.commons.CommonsMultipartFormDataParser.java
@Override public void parse(RequestAdapter requestAdapter) { try {// w w w .j a v a 2 s . c om DiskFileItemFactory factory = new DiskFileItemFactory(); if (maxInMemorySize > -1) { factory.setSizeThreshold(maxInMemorySize); } if (tempDirectoryPath != null) { File repository = new File(tempDirectoryPath); if (!repository.exists() && !repository.mkdirs()) { throw new IllegalArgumentException( "Given tempDirectoryPath [" + tempDirectoryPath + "] could not be created"); } factory.setRepository(repository); } FileUpload upload = new ServletFileUpload(factory); upload.setHeaderEncoding(requestAdapter.getEncoding()); if (maxRequestSize > -1L) { upload.setSizeMax(maxRequestSize); } if (maxFileSize > -1L) { upload.setFileSizeMax(maxFileSize); } Map<String, List<FileItem>> fileItemListMap; try { RequestContext requestContext = createRequestContext(requestAdapter.getAdaptee()); fileItemListMap = upload.parseParameterMap(requestContext); } catch (FileUploadBase.SizeLimitExceededException e) { log.warn("Maximum request length exceeded; multipart.maxRequestSize: " + maxRequestSize); requestAdapter.setMaxLengthExceeded(true); return; } catch (FileUploadBase.FileSizeLimitExceededException e) { log.warn("Maximum file length exceeded; multipart.maxFileSize: " + maxFileSize); requestAdapter.setMaxLengthExceeded(true); return; } parseMultipartParameters(fileItemListMap, requestAdapter); } catch (Exception e) { throw new MultipartRequestParseException("Could not parse multipart servlet request", e); } }
From source file:com.dlshouwen.wzgl.servlet.UploadPic.java
@Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("UTF-8"); String albumId = request.getParameter("albumId"); // String articleId = request.getParameter("articleId"); String type = request.getParameter("albumFlag"); // String isFile = request.getParameter("isFile"); // String isVideo = request.getParameter("isVideo"); PictureDao pictureDao = null;// w ww . j a v a 2 s. c o m try { pictureDao = (PictureDao) SpringUtils.getBean("pictureDao"); } catch (Exception ex) { Logger.getLogger(UploadPic.class.getName()).log(Level.SEVERE, null, ex); } // String tempPath = SysConfigLoader.getSystemConfig().getProperty("imageTemp", "C:\\files\\temp"); // File dirTempFile = new File(tempPath); if (!dirTempFile.exists()) { dirTempFile.mkdirs(); } DiskFileItemFactory factory = new DiskFileItemFactory(); factory.setSizeThreshold(20 * 1024 * 1024); //5M factory.setRepository(new File(tempPath)); // ServletFileUpload upload = new ServletFileUpload(factory); upload.setHeaderEncoding("UTF-8"); try { List items = upload.parseRequest(request); Iterator itr = items.iterator(); while (itr.hasNext()) { FileItem item = (FileItem) itr.next(); String fileName = item.getName(); if (!item.isFormField()) { InputStream is = null; synchronized (this) { try { is = item.getInputStream(); JSONObject jobj = FileUploadClient.upFile(request, fileName, is); String path = null; if (null != jobj && jobj.getString("responseMessage").equals("OK")) { if (StringUtils.isNotEmpty(jobj.getString("fpath"))) { String sourceURL = AttributeUtils.getAttributeContent( request.getServletContext(), "source_webapp_file_postion"); path = sourceURL + jobj.getString("fpath"); // filename = path.substring(path.lastIndexOf(File.separator) + 1); } } if (albumId != null && albumId.trim().length() > 0) { Picture pic = new Picture(); if (type != null) { pic.setFlag(type); } pic.setPicture_name(fileName); pic.setPath(path); pic.setAlbum_id(albumId); pic.setCreate_time(new Date()); SessionUser sessionUser = (SessionUser) request.getSession() .getAttribute(CONFIG.SESSION_USER); String userName = sessionUser.getUser_name(); pic.setUser_name(userName); pictureDao.insertPicture(pic); } String json = "{ \"state\": \"SUCCESS\",\"url\": \"" + path + "\",\"title\": \"" + fileName + "\",\"original\": \"" + fileName + "\"}"; response.setContentType("text/html;charset=utf-8"); response.setCharacterEncoding("UTF-8"); response.getWriter().print(json); } catch (Exception ex) { java.util.logging.Logger.getLogger(UploadPic.class.getName()).log(Level.SEVERE, null, ex); } finally { if (is != null) { is.close(); } } } } } } catch (FileUploadException e) { } }
From source file:edu.temple.cis3238.wiki.ui.servlets.UploaderServlet.java
/** * Processes requests for HTTP <code>POST</code> method. * * @param request servlet request/* w w w .ja va 2 s. c o m*/ * @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()) { // 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 be enctype = multipart/form-data."); writer.flush(); setSuccess(false); return; } // configures upload settings DiskFileItemFactory factory = new DiskFileItemFactory(); factory.setSizeThreshold(MEMORY_THRESHOLD); factory.setRepository(new File(System.getProperty("java.io.tmpdir"))); ServletFileUpload upload = new ServletFileUpload(factory); upload.setFileSizeMax(MAX_FILE_SIZE); upload.setSizeMax(MAX_REQUEST_SIZE); if (request.getSession() != null && request.getSession().getAttribute("topicCollection") != null) { try { collection = (TopicCollection) request.getSession().getAttribute("topicCollection"); setTopic(collection.getCurrentTopic()); setTopicID(getTopic().getTopicID() + ""); } catch (Exception e) { e.printStackTrace(); if (getTopic() == null) { try { setTopicID(request.getSession().getAttribute("topicID").toString()); setTopic(new TopicVOBuilder().setTopicID(Integer.parseInt(getTopicID())).build()); } catch (Exception ex) { ex.printStackTrace(); } } } } else { setTopicID("none"); } String uploadPath = FileUtils.makeDir(getServletContext(), UPLOAD_DIRECTORY, getTopic()); File uploadDir = new File(uploadPath); if (!uploadDir.exists()) { uploadDir.mkdirs(); } try { // parses the request's content to extract file data @SuppressWarnings("unchecked") List<FileItem> formItems = upload.parseRequest(request); String fileName = ""; if (formItems != null && formItems.size() > 0) { // iterates over form's fields for (FileItem item : formItems) { if (!item.isFormField()) { fileName = new File(item.getName()).getName(); String filePath = uploadPath + File.separator + fileName; System.out.println(filePath); File storeFile = new File(filePath); if (FileUtils.checkFileExtension(storeFile.getName().toLowerCase(), null)) { item.write(storeFile); request.setAttribute("sourceFile", fileName); System.out.println("----------------------------"); System.out.println("FILENAME is :" + fileName); System.out.println("----------------------------"); request.setAttribute("topicID", StringUtils.toS(getTopicID())); setStatus(request, true, "Success: Topic " + StringUtils.toS(getTopicID()) + " has saved file " + fileName + ". Upload has been done successfully!"); } else { setStatus(request, false, "Exception: Invalid file extension"); } } } } else { setStatus(request, false, "Exception: No valid file(s)"); } } catch (Exception ex) { ex.printStackTrace(); setStatus(request, false, "Exception: " + StringUtils.coalesce(ex.getMessage(), ex.toString(), "unknown")); } // redirects client to message page getServletContext().getRequestDispatcher("/" + REDIRECT_ON_COMPLETE_PAGE).forward(request, response); } }
From source file:controlador.SerCandidato.java
protected void processRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html;charset=UTF-8"); PrintWriter out = response.getWriter(); //ruta relativa en donde se guardan las fotos de candidatos String ruta = getServletContext().getRealPath("/") + "images/files/candidatos/"; //Partido p = new Partido(); Candidato c = new Candidato(); int accion = 1; //1=gregar 2=modificar if (ServletFileUpload.isMultipartContent(request)) { FileItemFactory factory = new DiskFileItemFactory(); ServletFileUpload upload = new ServletFileUpload(factory); DiskFileItemFactory diskFileItemFactory = new DiskFileItemFactory(); diskFileItemFactory.setSizeThreshold(40960); File repositoryPath = new File("/temp"); diskFileItemFactory.setRepository(repositoryPath); ServletFileUpload servletFileUpload = new ServletFileUpload(diskFileItemFactory); servletFileUpload.setSizeMax(81920); // bytes upload.setSizeMax(307200); // 1024 x 300 = 307200 bytes = 300 Kb List listUploadFiles = null; FileItem item = null;/*w w w. ja v a2 s. c o m*/ try { listUploadFiles = upload.parseRequest(request); Iterator it = listUploadFiles.iterator(); while (it.hasNext()) { item = (FileItem) it.next(); if (!item.isFormField()) { if (item.getSize() > 0) { String nombre = item.getName(); String tipo = item.getContentType(); long tamanio = item.getSize(); String extension = nombre.substring(nombre.lastIndexOf(".")); File archivo = new File(ruta, nombre); item.write(archivo); if (archivo.exists()) { c.setFoto(nombre); } else { out.println("FALLO AL GUARDAR. NO EXISTE " + archivo.getAbsolutePath() + "</p>"); } } } else { //se reciben los campos de texto enviados y se igualan a los atributos del objeto if (item.getFieldName().equals("slPartido")) { c.setIdPartido(Integer.parseInt(item.getString())); } if (item.getFieldName().equals("slDepartamento")) { c.setIdDepartamento(Integer.parseInt(item.getString())); } if (item.getFieldName().equals("txtDui")) { c.setNumDui(item.getString()); } if (item.getFieldName().equals("txtId")) { c.setIdCandidato(Integer.parseInt(item.getString())); } if (item.getFieldName().equals("txtTipo")) { //definimos que el candidato es tipo 1 (Partidario) c.setTipo(Integer.parseInt(item.getString())); } } } //si no se selecciono una imagen distinta, se conserva la imagen anterior if (c.getFoto() == null) { c.setFoto(CandidatoDTO.mostrarCandidato(c.getIdCandidato()).getFoto()); } //cuando se presiona el boton de agregar if (c.getIdCandidato() == 0) { if (CandidatoDTO.agregarCandidato(c)) { //candidato partidario = 1 //candidato independiente = 2 if (c.getTipo() == 1) { //crud de canidatos partidadios response.sendRedirect(this.redireccionJSP); } else { //crud de canidatos independientes response.sendRedirect(this.redireccionJSP2); } } else { //cambiar por alguna accion en caso de error out.print("Error al insertar"); } } //cuando se presiona el boton de modificar else { if (CandidatoDTO.modificarCandidato(c)) { if (c.getTipo() == 1) { //crud de canidatos partidadios response.sendRedirect(this.redireccionJSP); } else { //crud de canidatos independientes response.sendRedirect(this.redireccionJSP2); } } else { out.print("Error al modificar"); } } } catch (FileUploadException e) { out.println("Error Upload: " + e.getMessage()); e.printStackTrace(); } catch (Exception e) { out.println("Error otros: " + e.getMessage()); e.printStackTrace(); } } }
From source file:Com.Dispatcher.java
/** * Handles the HTTP <code>POST</code> method. * * @param request servlet request//from ww w . j a v a 2 s. co m * @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 { File file; Boolean isMultipart = ServletFileUpload.isMultipartContent(request); if (!isMultipart) { return; } // Create a session object if it is already not created. HttpSession session = request.getSession(true); // Get session creation time. Date createTime = new Date(session.getCreationTime()); // Get last access time of this web page. Date lastAccessTime = new Date(session.getLastAccessedTime()); String visitCountKey = new String("visitCount"); String userIDKey = new String("userID"); String userID = new String("ABCD"); Integer visitCount = (Integer) session.getAttribute(visitCountKey); // Check if this is new comer on your web page. if (visitCount == null) { session.setAttribute(userIDKey, userID); } else { visitCount++; userID = (String) session.getAttribute(userIDKey); } session.setAttribute(visitCountKey, visitCount); DiskFileItemFactory factory = new DiskFileItemFactory(); // maximum size that will be stored in memory factory.setSizeThreshold(maxMemSize); // Location to save data that is larger than maxMemSize. factory.setRepository(new File(fileRepository)); // 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()) { FileItem fi = (FileItem) i.next(); if (!fi.isFormField()) { // Get the uploaded file parameters String fieldName = fi.getFieldName(); String fileName = fi.getName(); String contentType = fi.getContentType(); boolean isInMemory = fi.isInMemory(); long sizeInBytes = fi.getSize(); // Write the file to server in "/uploads/{sessionID}/" String clientDataPath = getServletContext().getInitParameter("clientFolder"); // TODO clear the client folder here // FileUtils.deleteDirectory(new File("clientDataPath")); if (fileName.lastIndexOf("\\") >= 0) { File input = new File(clientDataPath + session.getId() + "/input/"); input.mkdirs(); File output = new File(clientDataPath + session.getId() + "/output/"); output.mkdirs(); session.setAttribute("inputFolder", clientDataPath + session.getId() + "/input/"); session.setAttribute("outputFolder", clientDataPath + session.getId() + "/output/"); file = new File( input.getAbsolutePath() + "/" + fileName.substring(fileName.lastIndexOf("/"))); } else { File input = new File(clientDataPath + session.getId() + "/input/"); input.mkdirs(); File output = new File(clientDataPath + session.getId() + "/output/"); output.mkdirs(); session.setAttribute("inputFolder", clientDataPath + session.getId() + "/input/"); session.setAttribute("outputFolder", clientDataPath + session.getId() + "/output/"); file = new File( input.getAbsolutePath() + "/" + fileName.substring(fileName.lastIndexOf("/") + 1)); } fi.write(file); } } } catch (Exception ex) { System.out.println("Failure: File Upload"); System.out.println(ex); //TODO show error page for website } System.out.println("file uploaded"); // TODO make the fileRepository Folder generic so it doesnt need to be changed // for each migration of the program to a different server File input = new File((String) session.getAttribute("inputFolder")); File output = new File((String) session.getAttribute("outputFolder")); File profile = new File(getServletContext().getInitParameter("profileFolder")); File hintsXML = new File(getServletContext().getInitParameter("hintsXML")); System.out.println("folders created"); Controller controller = new Controller(input, output, profile, hintsXML); HashMap initialArtifacts = controller.initialArtifacts(); session.setAttribute("Controller", controller); System.out.println("Initialisation of profiles for session (" + session.getId() + ") is complete\n" + "Awaiting user to update parameters to generate next generation of results.\n"); String json = new Gson().toJson(initialArtifacts); response.setContentType("application/json"); response.setCharacterEncoding("UTF-8"); response.getWriter().write(json); }
From source file:com.openhr.company.UploadCompLicenseFile.java
@Override public ActionForward execute(ActionMapping map, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { // checks if the request actually contains upload file if (!ServletFileUpload.isMultipartContent(request)) { PrintWriter writer = response.getWriter(); writer.println("Request does not contain upload data"); writer.flush();//w ww . j av a2 s. co m return map.findForward("HRHome"); } // configures upload settings DiskFileItemFactory factory = new DiskFileItemFactory(); factory.setSizeThreshold(THRESHOLD_SIZE); factory.setRepository(new File(System.getProperty("java.io.tmpdir"))); ServletFileUpload upload = new ServletFileUpload(factory); upload.setSizeMax(MAX_REQUEST_SIZE); // constructs the directory path to store upload file String uploadPath = 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 List formItems = upload.parseRequest(request); Iterator iter = formItems.iterator(); // iterates over form's fields while (iter.hasNext()) { FileItem item = (FileItem) iter.next(); // processes only fields that are not form fields if (!item.isFormField()) { String fileName = new File(item.getName()).getName(); String filePath = uploadPath + File.separator + fileName; File storeFile = new File(filePath); // saves the file on disk item.write(storeFile); // Read the file object contents and parse it and store it in the repos FileInputStream fstream = new FileInputStream(storeFile); DataInputStream in = new DataInputStream(fstream); BufferedReader br = new BufferedReader(new InputStreamReader(in)); String strLine; //Read File Line By Line while ((strLine = br.readLine()) != null) { System.out.print("Processing line - " + strLine); String[] lineColumns = strLine.split(COMMA); if (lineColumns.length < 8) { br.close(); in.close(); fstream.close(); throw new Exception("The required columns are missing in the line - " + strLine); } // Format is - CompID,CompName,Branch,Address,From,To,LicenseKey,FinStartMonth String companyId = lineColumns[0]; String companyName = lineColumns[1]; String branchName = lineColumns[2]; String address = lineColumns[3]; String fromDateStr = lineColumns[4]; String toDateStr = lineColumns[5]; String licenseKey = lineColumns[6]; String finStartMonthStr = lineColumns[7]; Date fromDate = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss", Locale.ENGLISH) .parse(fromDateStr); Date toDate = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss", Locale.ENGLISH).parse(toDateStr); address = address.replace(";", ","); List<Company> eComp = CompanyFactory.findByName(companyName); if (eComp == null || eComp.isEmpty()) { Company company = new Company(); company.setCompanyId(companyId); company.setName(companyName); company.setFystart(Integer.parseInt(finStartMonthStr)); Branch branch = new Branch(); branch.setAddress(address); branch.setCompanyId(company); branch.setName(branchName); Licenses license = new Licenses(); license.setActive(1); license.setCompanyId(company); license.setFromdate(fromDate); license.setTodate(toDate); license.formLicenseKey(); System.out.println("License key formed - " + license.getLicensekey()); System.out.println("License key given - " + licenseKey); if (license.getLicensekey().equalsIgnoreCase(licenseKey)) { CompanyFactory.insert(company); BranchFactory.insert(branch); LicenseFactory.insert(license); } else { br.close(); in.close(); fstream.close(); throw new Exception("License is tampared. Contact Support."); } } else { // Company is present, so update it. Company company = eComp.get(0); List<Licenses> licenses = LicenseFactory.findByCompanyId(company.getId()); Licenses newLicense = new Licenses(); newLicense.setActive(1); newLicense.setCompanyId(company); newLicense.setFromdate(fromDate); newLicense.setTodate(toDate); newLicense.formLicenseKey(); System.out.println("License key formed - " + newLicense.getLicensekey()); System.out.println("License key given - " + licenseKey); if (newLicense.getLicensekey().equalsIgnoreCase(licenseKey)) { for (Licenses lic : licenses) { if (lic.getActive().compareTo(1) == 0) { lic.setActive(0); LicenseFactory.update(lic); } } LicenseFactory.insert(newLicense); } else { br.close(); in.close(); fstream.close(); throw new Exception("License is tampared. Contact Support."); } } } //Close the input stream br.close(); in.close(); fstream.close(); } } System.out.println("Upload has been done successfully!"); } catch (Exception ex) { System.out.println("There was an error: " + ex.getMessage()); ex.printStackTrace(); } return map.findForward("CompLicHome"); }
From source file:controller.uploadImage.java
/** * Processes requests for both HTTP <code>GET</code> and <code>POST</code> * methods.//from w ww .j a va2 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, Exception { response.setContentType("text/html;charset=UTF-8"); //ArrayList<String> ls=new ArrayList(); try (PrintWriter out = response.getWriter()) { //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 HttpSession ssn = request.getSession(); 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(); } 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(); String filePath = uploadPath + File.separator + fileName; File storeFile = new File(filePath); // saves the file on disk if (storeFile.exists()) { ssn.setAttribute("uploadMsg", "File exists"); response.sendRedirect("register.htm?name=index"); } else { //if(item.isInMemory()) item.write(storeFile); ssn.setAttribute("imgname", storeFile.getName()); ssn.setAttribute("uploadMsg", "File uploded"); response.sendRedirect("register.htm?name=null"); } } else { ssn.setAttribute(item.getFieldName(), item.getString()); } } } } catch (Exception ex) { ssn.setAttribute("uploadMsg", ex.getMessage()); response.sendRedirect("register.htm?name=index"); } } }
From source file:com.glaf.core.web.servlet.FileUploadServlet.java
public void upload(HttpServletRequest request, HttpServletResponse response) { response.setContentType("text/html;charset=UTF-8"); LoginContext loginContext = RequestUtils.getLoginContext(request); if (loginContext == null) { return;// w w w. j a va 2 s. c o m } String serviceKey = request.getParameter("serviceKey"); String type = request.getParameter("type"); if (StringUtils.isEmpty(type)) { type = "0"; } Map<String, Object> paramMap = RequestUtils.getParameterMap(request); logger.debug("paramMap:" + paramMap); String rootDir = SystemProperties.getConfigRootPath(); InputStream inputStream = null; try { DiskFileItemFactory diskFactory = new DiskFileItemFactory(); // threshold ???? 8M diskFactory.setSizeThreshold(8 * FileUtils.MB_SIZE); // repository diskFactory.setRepository(new File(rootDir + "/temp")); ServletFileUpload upload = new ServletFileUpload(diskFactory); int maxUploadSize = conf.getInt(serviceKey + ".maxUploadSize", 0); if (maxUploadSize == 0) { maxUploadSize = conf.getInt("upload.maxUploadSize", 50);// 50MB } maxUploadSize = maxUploadSize * FileUtils.MB_SIZE; logger.debug("maxUploadSize:" + maxUploadSize); upload.setHeaderEncoding("UTF-8"); upload.setSizeMax(maxUploadSize); upload.setFileSizeMax(maxUploadSize); String uploadDir = Constants.UPLOAD_PATH; if (ServletFileUpload.isMultipartContent(request)) { logger.debug("#################start upload process#########################"); FileItemIterator iter = upload.getItemIterator(request); PrintWriter out = response.getWriter(); while (iter.hasNext()) { FileItemStream item = iter.next(); if (!item.isFormField()) { // ???? String autoCreatedDateDirByParttern = "yyyy/MM/dd"; String autoCreatedDateDir = DateFormatUtils.format(new java.util.Date(), autoCreatedDateDirByParttern); File savePath = new File(rootDir + uploadDir + autoCreatedDateDir); if (!savePath.exists()) { savePath.mkdirs(); } String fileId = UUID32.getUUID(); String fileName = savePath + "/" + fileId; BlobItem dataFile = new BlobItemEntity(); dataFile.setLastModified(System.currentTimeMillis()); dataFile.setCreateBy(loginContext.getActorId()); dataFile.setFileId(fileId); dataFile.setPath(uploadDir + autoCreatedDateDir + "/" + fileId); dataFile.setFilename(item.getName()); dataFile.setName(item.getName()); dataFile.setContentType(item.getContentType()); dataFile.setType(type); dataFile.setStatus(0); dataFile.setServiceKey(serviceKey); getBlobService().insertBlob(dataFile); inputStream = item.openStream(); FileUtils.save(fileName, inputStream); logger.debug(fileName + " save ok."); out.print(fileId); } } } } catch (Exception ex) { ex.printStackTrace(); } finally { IOUtils.close(inputStream); } }
From source file:com.controller.changeLogo.java
/** * Processes requests for both HTTP <code>GET</code> and <code>POST</code> * methods.//from w w w . java 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 */ @Override public void processRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { super.processRequest(request, response); response.setContentType("text/html;charset=UTF-8"); PrintWriter out = response.getWriter(); getSqlMethodsInstance().session = request.getSession(); String filePath = null; String fileName = null, fieldName = null, uploadPath = null, uploadType = null; RequestDispatcher request_dispatcher = null; File file; int maxFileSize = 5000 * 1024; int maxMemSize = 5000 * 1024; try { uploadPath = AppConstants.USER_LOGO; // Verify the content type String contentType = request.getContentType(); if ((contentType.indexOf("multipart/form-data") >= 0)) { DiskFileItemFactory factory = new DiskFileItemFactory(); // maximum size that will be stored in memory factory.setSizeThreshold(maxMemSize); // Location to save data that is larger than maxMemSize. factory.setRepository(new File(AppConstants.TMP_FOLDER)); // Create a new file upload handler ServletFileUpload upload = new ServletFileUpload(factory); // maximum file size to be uploaded. upload.setSizeMax(maxFileSize); // Parse the request to get file items. List fileItems = upload.parseRequest(request); // Process the uploaded file items Iterator i = fileItems.iterator(); out.println("<html>"); out.println("<head>"); out.println("<title>JSP File upload</title>"); out.println("</head>"); out.println("<body>"); while (i.hasNext()) { FileItem fi = (FileItem) i.next(); if (fi.isFormField()) { fieldName = fi.getFieldName(); if (fieldName.equals("upload")) { uploadType = fi.getString(); } } else { // Get the uploaded file parameters fieldName = fi.getFieldName(); fileName = fi.getName(); Integer UID = (Integer) getSqlMethodsInstance().session.getAttribute("UID"); uploadPath = uploadPath + File.separator + UID + File.separator + "logo"; File uploadDir = new File(uploadPath); if (!uploadDir.exists()) { uploadDir.mkdirs(); } // int inStr = fileName.indexOf("."); // String Str = fileName.substring(0, inStr); // // fileName = Str + "_" + UID + ".jpeg"; fileName = fileName + "_" + UID; getSqlMethodsInstance().session.setAttribute("ImageFileName", fileName); boolean isInMemory = fi.isInMemory(); long sizeInBytes = fi.getSize(); if (uploadType.equals("update")) { String file_name_to_delete = getSqlMethodsInstance().getLogofileName(UID); String filePath_to_delete = uploadPath + File.separator + file_name_to_delete; File deletefile = new File(filePath_to_delete); deletefile.delete(); } filePath = uploadPath + File.separator + fileName; File storeFile = new File(filePath); fi.write(storeFile); getSqlMethodsInstance().updateUsers(UID, fileName); out.println("Uploaded Filename: " + filePath + "<br>"); response.sendRedirect(request.getContextPath() + "/settings.jsp"); } } } } catch (Exception ex) { logger.log(Level.SEVERE, util.Utility.logMessage(ex, "Exception while updating org name:", getSqlMethodsInstance().error)); out.println(getSqlMethodsInstance().error); } finally { out.close(); getSqlMethodsInstance().closeConnection(); } }