Example usage for org.apache.commons.fileupload.disk DiskFileItemFactory setSizeThreshold

List of usage examples for org.apache.commons.fileupload.disk DiskFileItemFactory setSizeThreshold

Introduction

In this page you can find the example usage for org.apache.commons.fileupload.disk DiskFileItemFactory setSizeThreshold.

Prototype

public void setSizeThreshold(int sizeThreshold) 

Source Link

Document

Sets the size threshold beyond which files are written directly to disk.

Usage

From source file:inet.common.jsf.request.FileUploadFilter.java

@Override
public void doFilter(ServletRequest request, ServletResponse response, FilterChain filterChain)
        throws IOException, ServletException {

    HttpServletRequest httpServletRequest = (HttpServletRequest) request;
    boolean isMultipart = ServletFileUpload.isMultipartContent(httpServletRequest);

    if (isMultipart && !(request instanceof MultipartRequest)) {
        DiskFileItemFactory diskFileItemFactory = new DiskFileItemFactory();
        if (thresholdSize != null) {
            diskFileItemFactory.setSizeThreshold(Integer.valueOf(thresholdSize));
        }/*from ww  w  .j av a  2 s .  c o m*/
        if (uploadDir != null) {
            diskFileItemFactory.setRepository(new File(uploadDir));
        }

        ServletFileUpload servletFileUpload = new ServletFileUpload(diskFileItemFactory);
        MultipartRequest multipartRequest = new MultipartRequest(httpServletRequest, servletFileUpload);

        filterChain.doFilter(multipartRequest, response);
    } else {
        filterChain.doFilter(request, response);
    }
}

From source file:kelly.core.argument.CommonsFileUploadActionArgumentResolver.java

@Override
public Object resolve(ActionArgument actionArgument, Castor castor) {
    Multipart annotation = actionArgument.getAnnotation(Multipart.class);

    DiskFileItemFactory factory = new DiskFileItemFactory();
    factory.setRepository("".equals(annotation.tempdir()) ? DEFAULT_TEMP_DIR : new File(annotation.tempdir()));
    factory.setSizeThreshold(annotation.sizeThreshold());

    ServletFileUpload upload = new ServletFileUpload(factory);

    upload.setSizeMax(annotation.maxSize());

    try {//from  w w  w  . j  a v  a2  s .c  o  m
        List<FileItem> items = upload.parseRequest(WebContextHolder.getInstance().getRequest());
        return items.toArray(new FileItem[items.size()]);
    } catch (FileUploadException e) {
        throw new kelly.core.exception.FileUploadException(e);
    }
}

From source file:it.marcoberri.mbmeteo.action.UploadFile.java

/**
 * Handles the HTTP//from  w  w  w  .ja v  a2  s .c om
 * <code>POST</code> method.
 *
 * @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
protected void doPost(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {

    // checks if the request actually contains upload file
    if (!ServletFileUpload.isMultipartContent(request)) {
        return;
    }

    // configures some settings
    final DiskFileItemFactory factory = new DiskFileItemFactory();
    factory.setSizeThreshold(THRESHOLD_SIZE);
    factory.setRepository(new File(System.getProperty("java.io.tmpdir")));

    final ServletFileUpload upload = new ServletFileUpload(factory);
    upload.setFileSizeMax(MAX_FILE_SIZE);
    upload.setSizeMax(REQUEST_SIZE);

    // constructs the directory path to store upload file
    final String uploadPath = ConfigurationHelper.prop.getProperty("import.loggerEasyWeather.filepath");

    final File uploadDir = new File(uploadPath);

    if (!uploadDir.exists()) {
        FileUtils.forceMkdir(uploadDir);
    }

    try {
        // parses the request's content to extract file data
        final List formItems = upload.parseRequest(request);
        Iterator iter = formItems.iterator();

        // iterates over form's fields
        while (iter.hasNext()) {
            final FileItem item = (FileItem) iter.next();
            // processes only fields that are not form fields
            if (item.isFormField()) {
                continue;
            }

            final String fileName = new File(item.getName()).getName();
            final String filePath = uploadPath + File.separator + fileName;
            final File storeFile = new File(filePath);
            item.write(storeFile);
        }
        request.setAttribute("message", "Upload has been done successfully!");
    } catch (final Exception ex) {
        request.setAttribute("message", "There was an error: " + ex.getMessage());
    }

    final ExecuteImport i = new ExecuteImport();
    Thread t = new Thread(i);
    t.start();

}

From source file:Controlador.imagenes.java

/**
 * Processes requests for both HTTP <code>GET</code> and <code>POST</code>
 * methods.// w  w  w .ja v  a 2s.  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, FileUploadException {

    String archivourl = "D:\\Carlos Ivn\\Desktop\\CMSProductos\\web\\recursos\\imagenes\\index";

    DiskFileItemFactory factory = new DiskFileItemFactory();

    factory.setSizeThreshold(1024);

    factory.setRepository(new File(archivourl));

    ServletFileUpload upload = new ServletFileUpload(factory);
    String cod = "";

    PrintWriter out = response.getWriter();

    try {

        String nom = "";
        List<FileItem> partes = upload.parseRequest(request);
        Iterator<FileItem> it = partes.iterator();
        FileItem fileItem = it.next();
        if ("txtImagen1".equals(fileItem.getFieldName())) {
            nom = "\\c1.jpg";
        } else if ("txtImagen2".equals(fileItem.getFieldName())) {
            nom = "\\ca2.jpg";
        } else if ("txtImagen3".equals(fileItem.getFieldName())) {
            nom = "\\ca3.jpg";
        } else if ("txtImagenn".equals(fileItem.getFieldName())) {
            archivourl = "D:\\Carlos Ivn\\Desktop\\CMSProductos\\web\\recursos\\imagenes\\nosotros";
            nom = "\\portada.jpg";
        }
        out.print(fileItem.getFieldName());
        for (FileItem items : partes) {
            File file = new File(archivourl, items.getName());
            String ruta = archivourl + "\\" + items.getName();
            String ruta2 = archivourl + nom;
            out.println(ruta);
            // verificar si existe el nombre y borrarlo
            if (ruta == null ? ruta2 != null : !ruta.equals(ruta2)) {
                File file2 = new File(ruta2);
                file2.delete();
            }
            //  cambiar el nombre del archivo    
            items.write(file);
            File archivo = new File(ruta);
            archivo.renameTo(new File(ruta2));

        }
        if (nom == "\\portada.jpg") {
            response.sendRedirect("Administrador/Paginas/nosotros.jsp");
        } else
            response.sendRedirect("Administrador/Paginas/inicio.jsp");
    } catch (Exception e) {
        out.print("ERROR " + e.getMessage() + "");
        //response.sendRedirect("Administrador/Paginas/inicio.jsp");
    }
}

From source file:edu.lafayette.metadb.web.dataman.ImportAdminDesc.java

/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*///from   w w w.  j av  a 2  s .c  o m

@SuppressWarnings("unchecked")
protected void doPost(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    // TODO Auto-generated method stub
    PrintWriter out = response.getWriter();
    String delimiter = "comma";
    boolean replaceEntity = false;
    String projname = (String) request.getSession(false).getAttribute(Global.SESSION_PROJECT);
    JSONObject output = new JSONObject();

    try {
        if (ServletFileUpload.isMultipartContent(request)) {
            ServletFileUpload servletFileUpload = new ServletFileUpload(new DiskFileItemFactory());
            List fileItemsList = servletFileUpload.parseRequest(request);
            DiskFileItemFactory diskFileItemFactory = new DiskFileItemFactory();
            diskFileItemFactory.setSizeThreshold(40960); /* the unit is bytes */

            Iterator it = fileItemsList.iterator();
            InputStream input = null;
            while (it.hasNext()) {
                FileItem fileItem = (FileItem) it.next();

                if (fileItem.isFormField()) {
                    /* The file item contains a simple name-value pair of a form field */
                    if (fileItem.getFieldName().equals("delimiter"))
                        delimiter = fileItem.getString();
                    else if (fileItem.getFieldName().equals("replace-entity"))
                        replaceEntity = true;
                } else {
                    input = fileItem.getInputStream();
                }
            }

            String delimiterType = "csv";
            if (delimiter.equals("tab")) {
                delimiterType = "tsv";
            }
            if (input != null) {
                Result res = DataImporter.importFile(delimiterType, projname, input, replaceEntity);
                if (res.isSuccess()) {
                    HttpSession session = request.getSession(false);
                    if (session != null) {
                        String userName = (String) session.getAttribute(Global.SESSION_USERNAME);
                        SysLogDAO.log(userName, Global.SYSLOG_PROJECT,
                                "Data imported into project " + projname);
                    }
                    output.put("message", "Data import successfully");
                } else {
                    output.put("message", "The following fields have been changed:");
                    StringBuilder fields = new StringBuilder();
                    for (String field : (ArrayList<String>) res.getData())
                        fields.append(field + ',');
                    output.put("fields", fields.toString());
                }
                output.put("success", res.isSuccess());
            } else {
                output.put("success", false);
                output.put("message", "Null data");
            }
        } else {
            output.put("success", false);
            output.put("message", "Form is not multi-part");
        }
    } catch (Exception e) {
        MetaDbHelper.logEvent(e);
    }
    out.print(output);
    out.flush();
}

From source file:game.com.HandleUploadGameNesServlet.java

private void handle(HttpServletRequest request, AjaxResponseEntity responseObject) throws Exception {
    boolean isMultipart;
    String filePath;/* w ww . j av a 2 s  . co  m*/
    int maxFileSize = 4 * 1024 * 1024;
    int maxMemSize = 4 * 1024 * 1024;
    File file;

    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);
    Map<String, List<FileItem>> postData = upload.parseParameterMap(request);
    String id = postData.get("id").get(0).getString();
    if (StringUtils.isBlank(id)) {
        logger.info("id= " + id);
    }

    try {
        // Parse the request to get file items.
        List<FileItem> fileItems = postData.get("nes");
        // Process the uploaded file items

        for (FileItem fi : fileItems) {
            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

                file = new File(AppConfig.OPENSHIFT_DATA_DIR + "/nes/" + id + ".zip");

                fi.write(file);
                responseObject.data = getNesFileUrl(id);
                responseObject.returnCode = 1;
                responseObject.returnMessage = "success";
                break;
            } else {
                logger.info("isFormField " + fi.getFieldName());
            }
        }

    } catch (Exception ex) {
        logger.error(ex.getMessage(), ex);
    }
}

From source file:com.seer.datacruncher.profiler.spring.FileUploadController.java

public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    // Check that we have a file upload request
    filePath = this.servletContext.getInitParameter("file-upload");
    isMultipart = ServletFileUpload.isMultipartContent(request);
    response.setContentType("text/html");
    java.io.PrintWriter out = response.getWriter();
    if (!isMultipart) {
        return null;
    }//from ww  w  . j  a va2 s.  c om
    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(filePath));

    // 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
                if (fileName.lastIndexOf("\\") >= 0) {
                    file = new File(filePath + fileName.substring(fileName.lastIndexOf("\\")));
                } else {
                    file = new File(filePath + fileName.substring(fileName.lastIndexOf("\\") + 1));
                }
                fi.write(file);
                out.print("{success: true, file: \"" + fileName + "\"}");
                // out.println("{\"file\": " + fileName + "}");
            }
        }

    } catch (Exception ex) {
        System.out.println(ex);
    }
    return null;
}

From source file:com.ci6225.marketzone.servlet.seller.AddProductServlet.java

/**
 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
 * response)//from  w  w  w  .j a  v a 2 s.  c o m
 */
protected void doPost(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {

    String name = null;
    String description = null;
    String unitPrice = null;
    String quantity = null;
    FileItem imageItem = null;

    // constructs the folder where uploaded file will be stored
    //String uploadFolder = getServletContext().getRealPath("") + "/productImages";
    // Create a factory for disk-based file items
    DiskFileItemFactory factory = new DiskFileItemFactory();
    factory.setSizeThreshold(5000 * 1024);
    factory.setRepository(new File(System.getProperty("java.io.tmpdir")));
    // Create a new file upload handler
    ServletFileUpload upload = new ServletFileUpload(factory);
    upload.setSizeMax(5000 * 1024);

    try {
        // Parse the request
        List<FileItem> items = upload.parseRequest(request);
        Iterator iter = items.iterator();

        while (iter.hasNext()) {
            FileItem item = (FileItem) iter.next();

            if (!item.isFormField()) {
                if (item.getFieldName().equals("productImage") && !item.getString().equals("")) {
                    imageItem = item;
                }
                System.out.println(item.getFieldName());
            } else {
                System.out.println(item.getFieldName() + " " + item.getString());
                if (item.getFieldName().equals("name")) {
                    name = item.getString();
                } else if (item.getFieldName().equals("description")) {
                    description = item.getString();
                } else if (item.getFieldName().equals("unitPrice")) {
                    unitPrice = item.getString();
                } else if (item.getFieldName().equals("quantity")) {
                    quantity = item.getString();
                }
            }
        }

    } catch (FileUploadException ex) {
        System.out.println(ex);
        ex.printStackTrace();
        response.sendRedirect("./addProduct");
    } catch (Exception ex) {
        System.out.println(ex);
        ex.printStackTrace();
        response.sendRedirect("./addProduct");
    }

    FormValidation validation = new FormValidation();
    List<String> messageList = new ArrayList<String>();
    if (!validation.validateAddProduct(name, description, quantity, unitPrice, imageItem)) {
        messageList.addAll(validation.getErrorMessages());
        request.setAttribute("errorMessage", messageList);
        request.setAttribute("name", name);
        request.setAttribute("description", description);
        request.setAttribute("quantity", quantity);
        request.setAttribute("unitPrice", unitPrice);
        RequestDispatcher rd = request.getRequestDispatcher("./addProduct");
        rd.forward(request, response);
    }

    try {
        User user = (User) request.getSession().getAttribute("user");
        productBean.addProduct(name, description, user.getUserId(), Integer.parseInt(quantity),
                Float.parseFloat(unitPrice), imageItem);
        messageList.add("Product Added Successfully.");
        request.setAttribute("successMessage", messageList);
        RequestDispatcher rd = request.getRequestDispatcher("./ViewProductList");
        rd.forward(request, response);
    } catch (Exception e) {
        e.printStackTrace();
        response.sendRedirect("./addProduct");
    }
}

From source file:com.official.wears.site.UploadServlet.java

public void doPost(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, java.io.IOException {
    // Check that we have a file upload request
    isMultipart = ServletFileUpload.isMultipartContent(request);
    response.setContentType("text/html");
    java.io.PrintWriter out = response.getWriter();
    if (!isMultipart) {
        out.println("<html>");
        out.println("<head>");
        out.println("<title>Servlet upload</title>");
        out.println("</head>");
        out.println("<body>");
        out.println("<p>No file uploaded</p>");
        out.println("</body>");
        out.println("</html>");
        return;// w w w.j a va2 s.com
    }
    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("c:\\temp"));

    // 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();

        out.println("<html>");
        out.println("<head>");
        out.println("<title>Servlet upload</title>");
        out.println("</head>");
        out.println("<body>");
        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
                if (fileName.lastIndexOf("\\") >= 0) {
                    file = new File(filePath + fileName.substring(fileName.lastIndexOf("\\")));
                } else {
                    file = new File(filePath + fileName.substring(fileName.lastIndexOf("\\") + 1));
                }
                fi.write(file);
                out.println("Uploaded Filename: " + fileName + "<br>");
            }
        }
        out.println("</body>");
        out.println("</html>");
    } catch (Exception ex) {
        System.out.println(ex);
    }
}

From source file:game.com.HandleUploadGameGalleryServlet.java

private void handle(HttpServletRequest request, AjaxResponseEntity responseObject) throws Exception {
    boolean isMultipart;
    String filePath;// w ww  .  j  a v a2  s .  c om
    int maxFileSize = 4 * 1024 * 1024;
    int maxMemSize = 4 * 1024 * 1024;
    File file;

    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);
    Map<String, List<FileItem>> postData = upload.parseParameterMap(request);
    String id = postData.get("id").get(0).getString();
    if (StringUtils.isBlank(id)) {
        logger.info("id= " + id);
    }
    File folder = new File(AppConfig.OPENSHIFT_DATA_DIR + "/gallery/" + id);
    if (!folder.exists()) {
        folder.mkdir();
    }
    try {
        // Parse the request to get file items.
        List<FileItem> fileItems = postData.get("imagegallery");
        // Process the uploaded file items
        SimpleDateFormat dateFormat = new SimpleDateFormat("MMddhhmmSSS");
        for (FileItem fi : fileItems) {
            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
                String filename = dateFormat.format(new Date());
                file = new File(AppConfig.OPENSHIFT_DATA_DIR + "/gallery/" + id + "/" + filename + ".png");
                fi.write(file);
            } else {
                logger.info("isFormField " + fi.getFieldName());
            }
        }
        List<String> gallery = getGalleryImage(id);

        responseObject.data = new Gson().toJson(gallery);
        responseObject.returnCode = 1;
        responseObject.returnMessage = "success";

    } catch (Exception ex) {
        logger.error(ex.getMessage(), ex);
    }
}