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:com.eufar.asmm.server.UploadImage.java

protected void doPost(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    System.out.println("UploadImage - the function started");
    DiskFileItemFactory factory = new DiskFileItemFactory();
    factory.setSizeThreshold(MAX_MEMORY_SIZE);
    String uploadFolder = getServletContext().getRealPath("") + DATA_DIRECTORY;
    ServletFileUpload upload = new ServletFileUpload(factory);
    upload.setSizeMax(MAX_REQUEST_SIZE);
    double maxSize = (MAX_REQUEST_SIZE / 1024) / 1024;
    System.out.println("UploadImage - max image size: " + maxSize + " Mbytes");
    try {//from  w  ww .j  a  v a 2  s .c  o  m
        @SuppressWarnings("rawtypes")
        List items = upload.parseRequest(request);
        @SuppressWarnings("rawtypes")
        Iterator iter = items.iterator();
        while (iter.hasNext()) {
            Object obj = iter.next();
            org.apache.commons.fileupload.FileItem item = (org.apache.commons.fileupload.FileItem) obj;
            String fileExt = FilenameUtils.getExtension(item.getName());
            if (fileExt.matches("(jpg|jpeg|bmp|png|JPG|JPEG|BMP|PNG)")) {
                System.out.println("UploadImage - image accepted");
                if (!item.isFormField()) {
                    File uploadedFile = File.createTempFile("tmp_", "." + fileExt, new File(uploadFolder));
                    item.write(uploadedFile);
                    double fileSize = item.getSize();
                    fileSize = (fileSize / 1024) / 1024;
                    response.setCharacterEncoding("UTF-8");
                    response.setContentType("text/html");
                    response.getWriter().write(uploadedFile.getName());
                    System.out.println("UploadImage - " + uploadedFile.getPath() + ": upload ok...");
                    System.out.println("UploadImage - " + uploadedFile.getPath() + ": " + fileSize + " MBytes");
                    if (new File(uploadedFile.getPath()).isFile()) {
                        System.out.println("PrintFunction - picture (webapps): the file exists.");
                    } else {
                        System.out.println("PrintFunction - picture (webapps): the file doesn't exist.");
                    }
                    if (new File(uploadedFile.getPath()).isFile()) {
                        System.out.println("PrintFunction - picture (webapps): the file can be read.");
                    } else {
                        System.out.println("PrintFunction - picture (webapps): the file can't be read.");
                    }
                } else {
                    System.out.println("UploadImage - a problem occured with the file format");
                }
            } else {
                System.out.println("UploadImage - image rejected: wrong format");
                response.setCharacterEncoding("UTF-8");
                response.setContentType("text/html");
                response.getWriter().write("format");
            }
        }
    } catch (Exception ex) {
        System.out.println("UploadImage - a problem occured: " + ex);
        response.getWriter().write("ERROR:" + ex.getMessage());
    }
}

From source file:gr.forth.ics.isl.x3mlEditor.upload.MultipartUploadParser.java

private DiskFileItemFactory setupFileItemFactory(File repository, ServletContext context) {
    DiskFileItemFactory factory = new DiskFileItemFactory();
    factory.setSizeThreshold(DiskFileItemFactory.DEFAULT_SIZE_THRESHOLD);
    factory.setRepository(repository);//  w ww .j a va  2s . c om

    FileCleaningTracker pTracker = FileCleanerCleanup.getFileCleaningTracker(context);
    factory.setFileCleaningTracker(pTracker);

    return factory;
}

From source file:Index.UploadFileServlet.java

/**
 * Processes requests for both HTTP <code>GET</code> and <code>POST</code>
 * methods./*w  w w .  j  av  a2s. 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");

    String ubicacionArchivo = "C:\\Users\\Romina\\Documents\\NetBeansProjects\\QuickOrderWeb\\web\\images";

    DiskFileItemFactory factory = new DiskFileItemFactory();
    factory.setSizeThreshold(1024);
    factory.setRepository(new File(ubicacionArchivo));

    ServletFileUpload upload = new ServletFileUpload(factory);

    try {
        List<FileItem> partes = upload.parseRequest(request);

        for (FileItem item : partes) {
            File file = new File(ubicacionArchivo,
                    request.getSession().getAttribute("userName").toString() + ".jpg");
            item.write(file);
            System.out.println("name: " + item.getName());
        }
        request.setAttribute("error", null);
        request.setAttribute("result", "Se ha registrado correctamente");
        request.setAttribute("funcionalidad", "Imagen");
        request.getSession().removeAttribute("userName");

        request.getRequestDispatcher("/Login.jsp").forward(request, response);
    } catch (FileUploadException ex) {
        System.out.println("Error al subir el archivo: " + ex.getMessage());

        request.setAttribute("error", "Error al subir la imagen");
        request.setAttribute("funcionalidad", "Imagen");

        request.getRequestDispatcher("/Login.jsp").forward(request, response);
    } catch (Exception ex) {
        System.out.println("Error al subir el archivo: " + ex.getMessage());
        request.setAttribute("error", "Error al subir la imagen");
        request.setAttribute("funcionalidad", "Imagen");

        request.getRequestDispatcher("/Login.jsp").forward(request, response);

    }

}

From source file:Index.RegisterRestaurantImagesServlet.java

/**
 * Processes requests for both HTTP <code>GET</code> and <code>POST</code>
 * methods.//from  www.java 2s.com
 *
 * @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()) {

        String ubicacionArchivo = "C:\\Users\\Romina\\Documents\\NetBeansProjects\\QuickOrderWeb\\web\\images";

        DiskFileItemFactory factory = new DiskFileItemFactory();
        factory.setSizeThreshold(1024);
        factory.setRepository(new File(ubicacionArchivo));

        ServletFileUpload upload = new ServletFileUpload(factory);

        try {
            List<FileItem> partes = upload.parseRequest(request);

            List<String> listImage = (List<String>) request.getSession().getAttribute("listImagen");
            if (listImage == null) {
                listImage = new ArrayList<String>();
            }

            for (FileItem item : partes) {
                webservice.Restaurante rest = (webservice.Restaurante) request.getSession()
                        .getAttribute("registroUsuario");
                File file = new File(ubicacionArchivo, rest.getNickname() + listImage.size() + ".jpg");
                item.write(file);
                System.out.println("name: " + item.getName());
                listImage.add(rest.getNickname() + listImage.size() + ".jpg");
            }

            request.getSession().setAttribute("listImagen", listImage);
            request.getRequestDispatcher("/AltaRestauranteImagen.jsp").forward(request, response);
        } catch (FileUploadException ex) {
            System.out.println("Error al subir el archivo: " + ex.getMessage());
            request.getRequestDispatcher("/AltaRestauranteImagen.jsp").forward(request, response);
        } catch (Exception ex) {
            System.out.println("Error al subir el archivo: " + ex.getMessage());
            request.getRequestDispatcher("/AltaRestauranteImagen.jsp").forward(request, response);

        }
    }
}

From source file:at.ac.dbisinformatik.snowprofile.web.ListSnowProfileResource.java

/**
 * store new Snowprofile in Database//  ww w  .j  a  v  a  2 s.  c  o  m
 * 
 * @param entity
 * @return
 * @throws Exception
 */
@Post
public String storeJson(Representation entity) throws Exception {
    String rep = "";
    if (entity != null) {
        if (MediaType.MULTIPART_FORM_DATA.equals(entity.getMediaType(), true)) {
            DiskFileItemFactory factory = new DiskFileItemFactory();
            factory.setSizeThreshold(1000240);

            RestletFileUpload upload = new RestletFileUpload(factory);
            List<FileItem> items;

            items = upload.parseRequest(getRequest());

            boolean found = false;
            for (final Iterator<FileItem> it = items.iterator(); it.hasNext() && !found;) {
                FileItem fi = it.next();
                String snowprofile = "";
                if (fi.getFieldName().equals("import")) {
                    snowprofile = IOUtils.toString(fi.getInputStream());
                    JSONObject snowprofileJSON = XML.toJSONObject(snowprofile);

                    snowprofile = snowprofileJSON.toString().replace("caaml:", "");
                    snowprofile = snowprofile.replace("gml:", "gml_");
                    snowprofile = snowprofile.replace("xmlns:", "xmlns_");
                    snowprofile = snowprofile.replace("xsi:", "xsi_");

                    snowprofileJSON = new JSONObject(snowprofile);

                    snowprofile = db.store("SnowProfile",
                            new JSONObject(snowprofileJSON.get("SnowProfile").toString()));
                    rep = "{\"success\": \"true\", \"id\": \"" + snowprofile + "\"}";
                } else {
                    rep = new StringRepresentation("no file uploaded", MediaType.TEXT_PLAIN).toString();
                }
            }
        } else {
            rep = db.store("SnowProfile", new JSONObject(entity.getText()));
        }
    }

    return rep;
}

From source file:com.boundlessgeo.geoserver.api.controllers.ApiController.java

protected ServletFileUpload newFileUpload() {
    DiskFileItemFactory diskFactory = new DiskFileItemFactory();
    diskFactory.setSizeThreshold(1024 * 1024 * 256); // TODO: make this configurable

    return new ServletFileUpload(diskFactory);
}

From source file:com.es.keyassistant.resolvers.Resolver0004.java

@Override
public ServiceResult execute() throws Exception {
    File dir = new File(getRequest().getServletContext().getRealPath(TMP_PATH));
    dir.mkdirs();//from w w  w .  j a v a2s .co  m

    DiskFileItemFactory factory = new DiskFileItemFactory();
    factory.setSizeThreshold(5 * 1024);
    factory.setRepository(dir);
    ServletFileUpload upload = new ServletFileUpload(factory);
    upload.setHeaderEncoding("UTF-8");
    upload.setSizeMax(5 * 1024 * 1024);
    List<FileItem> formItems = upload.parseRequest(getRequest());

    DetectionInfo info = new DetectionInfo();
    assignPropertiesTo(formItems, info);

    for (FileItem formItem : formItems) {
        if (!formItem.isFormField()) {
            String fileName = formItem.getName();
            String targetFileName = generateDectionFileName(fileName, info);
            info.setDetectionFileName(targetFileName);
            info.setDetectionFilePath(String.format("%s/%s", STORE_PATH, targetFileName));

            File storeDir = new File(getRequest().getServletContext().getRealPath(STORE_PATH));
            storeDir.mkdirs();
            File detectionFile = new File(storeDir, targetFileName);

            formItem.write(detectionFile);

            formItem.delete();
            break;
        }
    }

    if (info.getDetectionSN() == null) {
        throw new ClientException(ClientException.REQUEST_ERROR, "");
    }

    ContentService service = new ContentService();
    if (service.addDetectionInfo(info) < 0) {
        throw new ClientException(ClientException.REQUEST_ERROR, "??");
    }

    ServiceResult result = new ServiceResult();
    result.getData().add(makeMapByKeyAndValues("receiptNumber", info.getDetectionSN()));

    return result;
}

From source file:com.jyhon.servlet.audit.AuditUserServlet.java

private List<FileItem> getFileItems(HttpServletRequest request, String pathTemp) {
    DiskFileItemFactory diskFileItemFactory = new DiskFileItemFactory();
    diskFileItemFactory.setRepository(new File(pathTemp));
    diskFileItemFactory.setSizeThreshold(10240);
    ServletFileUpload servletFileUpload = new ServletFileUpload(diskFileItemFactory);
    List<FileItem> items = null;
    try {//from  ww w .java  2s .  co m
        items = servletFileUpload.parseRequest(request);
    } catch (FileUploadException e) {
        e.printStackTrace();
    }
    return items;
}

From source file:Index.RegisterClienteImagesServlet.java

/**
 * Processes requests for both HTTP <code>GET</code> and <code>POST</code>
 * methods.//from w ww .ja v  a2s  . 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()) {

        String ubicacionArchivo = "~\\NetBeansProjects\\QuickOrderWeb\\web\\images";

        DiskFileItemFactory factory = new DiskFileItemFactory();
        factory.setSizeThreshold(1024);
        factory.setRepository(new File(ubicacionArchivo));

        ServletFileUpload upload = new ServletFileUpload(factory);

        try {
            List<FileItem> partes = upload.parseRequest(request);
            webservice.Cliente client = new webservice.Cliente();

            for (FileItem item : partes) {
                client = (webservice.Cliente) request.getSession().getAttribute("registroUsuario");
                File file = new File(ubicacionArchivo, client.getNickname() + ".jpg");
                item.write(file);
                System.out.println("name: " + item.getName());
                client.setImagen(client.getNickname() + ".jpg");
            }

            QuickOrderWebService webService = new QuickOrderWebService();
            ControllerInterface port = webService.getQuickOrderWebServicePort();
            port.registrarCliente(client);

            request.setAttribute("error", null);
            request.setAttribute("agregado", "OK");
            request.removeAttribute("registroUsuario");
            request.getSession().removeAttribute("userName");

            request.getRequestDispatcher("/AltaCliente.jsp").forward(request, response);
        } catch (FileUploadException ex) {
            System.out.println("Error al subir el archivo: " + ex.getMessage());

            request.setAttribute("error", "Error al subir la imagen");
            request.setAttribute("funcionalidad", "Imagen");

            request.getRequestDispatcher("/Login.jsp").forward(request, response);
        } catch (Exception ex) {
            System.out.println("Error al subir el archivo: " + ex.getMessage());
            request.setAttribute("error", "Error al subir la imagen");
            request.setAttribute("funcionalidad", "Imagen");

            request.getRequestDispatcher("/Login.jsp").forward(request, response);

        }
    }
}

From source file:edu.cudenver.bios.filesvc.resource.UploadResource.java

/**
 * Handle POST requests for file upload/* ww  w .ja  va2 s  . c o m*/
 * @param entity entity body information (multi-part form encoded)
 */
@Post
public void upload(Representation entity) {
    if (entity != null) {
        if (MediaType.MULTIPART_FORM_DATA.equals(entity.getMediaType(), true)) {

            // The Apache FileUpload project parses HTTP requests which
            // conform to RFC 1867, "Form-based File Upload in HTML". That
            // is, if an HTTP request is submitted using the POST method,
            // and with a content type of "multipart/form-data", then
            // FileUpload can parse that request, and get all uploaded files
            // as FileItem.

            // 1/ Create a factory for disk-based file items
            DiskFileItemFactory factory = new DiskFileItemFactory();
            factory.setSizeThreshold(1000240);

            // 2 Create a new file upload handler based on the Restlet
            // FileUpload extension that will parse Restlet requests and
            // generates FileItems.
            RestletFileUpload upload = new RestletFileUpload(factory);
            List<FileItem> items;
            try {
                // 3. Request is parsed by the handler which generates a
                // list of FileItems
                items = upload.parseRequest(getRequest());

                // Process only the uploaded item called "fileToUpload" and
                // save it on disk
                boolean found = false;
                FileItem fi = null;
                for (final Iterator<FileItem> it = items.iterator(); it.hasNext() && !found;) {
                    fi = (FileItem) it.next();
                    if (fi.getFieldName().equals(FORM_TAG_FILE)) {
                        found = true;
                        break;
                    }
                }
                // Once handled, the content of the uploaded file is sent
                // back to the client.
                Representation rep = null;
                if (found) {
                    // Create a new representation based on disk file.
                    // The content is arbitrarily sent as plain text.
                    rep = new StringRepresentation(fi.getString(), MediaType.TEXT_HTML);
                    getResponse().setEntity(rep);
                    getResponse().setStatus(Status.SUCCESS_OK);
                } else {
                    rep = new StringRepresentation("No file data found", MediaType.TEXT_HTML);
                    getResponse().setEntity(rep);
                    getResponse().setStatus(Status.CLIENT_ERROR_BAD_REQUEST);
                }
            } catch (Exception e) {
                // The message of all thrown exception is sent back to
                // client as simple plain text
                getResponse().setEntity(
                        new StringRepresentation("Upload failed: " + e.getMessage(), MediaType.TEXT_HTML));
                getResponse().setStatus(Status.CLIENT_ERROR_BAD_REQUEST);
            }
        }
    } else {
        // POST request with no entity.
        getResponse().setStatus(Status.CLIENT_ERROR_BAD_REQUEST);
    }
}