Example usage for org.apache.commons.fileupload FileItem getSize

List of usage examples for org.apache.commons.fileupload FileItem getSize

Introduction

In this page you can find the example usage for org.apache.commons.fileupload FileItem getSize.

Prototype

long getSize();

Source Link

Document

Returns the size of the file item.

Usage

From source file:ca.myewb.frame.PostParamWrapper.java

public PostParamWrapper(HttpServletRequest request) throws Exception {
    if (!FileUpload.isMultipartContent(request)) {
        return;//from  w  w w. ja va2  s  .c o m
    }

    DiskFileUpload upload = new DiskFileUpload();
    upload.setRepositoryPath(Helpers.getUserFilesDir() + "/temp");

    try {
        List items = upload.parseRequest(request);

        Iterator iter = items.iterator();

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

            if (item.isFormField()) {
                stringParams.put(item.getFieldName(), item.getString());
                allParams.put(item.getFieldName(), item);
            } else if (item.getSize() > 0) {
                fileParams.put(item.getFieldName(), item);
                allParams.put(item.getFieldName(), item);
            }
        }
    } catch (FileUploadException ex) {
        log.debug("The file upload exception returned the message: " + ex.getMessage());
        // Usually means user cancelled upload and connection timed out.
        // Do nothing.
    }
}

From source file:echopoint.tucana.JakartaCommonsFileUploadProvider.java

/**
 * @see UploadSPI#handleUpload(nextapp.echo.webcontainer.Connection ,
 *      FileUploadSelector, String, UploadProgress)
 *///from   w  w w. j ava  2s  .c om
@SuppressWarnings({ "ThrowableInstanceNeverThrown" })
public void handleUpload(final Connection conn, final FileUploadSelector uploadSelect, final String uploadIndex,
        final UploadProgress progress) throws Exception {
    final ApplicationInstance app = conn.getUserInstance().getApplicationInstance();

    final DiskFileItemFactory itemFactory = new DiskFileItemFactory();
    itemFactory.setRepository(getDiskCacheLocation());
    itemFactory.setSizeThreshold(getMemoryCacheThreshold());

    String encoding = conn.getRequest().getCharacterEncoding();
    if (encoding == null) {
        encoding = "UTF-8";
    }

    final ServletFileUpload upload = new ServletFileUpload(itemFactory);
    upload.setHeaderEncoding(encoding);
    upload.setProgressListener(new UploadProgressListener(progress));

    long sizeLimit = uploadSelect.getUploadSizeLimit();
    if (sizeLimit == 0)
        sizeLimit = getFileUploadSizeLimit();
    if (sizeLimit != NO_SIZE_LIMIT) {
        upload.setSizeMax(sizeLimit);
    }

    String fileName = null;
    String contentType = null;

    try {
        final FileItemIterator iter = upload.getItemIterator(conn.getRequest());
        if (iter.hasNext()) {
            final FileItemStream stream = iter.next();

            if (!stream.isFormField()) {
                fileName = FilenameUtils.getName(stream.getName());
                contentType = stream.getContentType();

                final Set<String> types = uploadSelect.getContentTypeFilter();
                if (!types.isEmpty()) {
                    if (!types.contains(contentType)) {
                        app.enqueueTask(uploadSelect.getTaskQueue(), new InvalidContentTypeRunnable(
                                uploadSelect, uploadIndex, fileName, contentType, progress));
                        return;
                    }
                }

                progress.setStatus(Status.inprogress);
                final FileItem item = itemFactory.createItem(fileName, contentType, false, stream.getName());
                item.getOutputStream(); // initialise DiskFileItem internals

                uploadSelect.notifyCallback(
                        new UploadStartEvent(uploadSelect, uploadIndex, fileName, contentType, item.getSize()));

                IOUtils.copy(stream.openStream(), item.getOutputStream());

                app.enqueueTask(uploadSelect.getTaskQueue(),
                        new FinishRunnable(uploadSelect, uploadIndex, fileName, item, progress));

                return;
            }
        }

        app.enqueueTask(uploadSelect.getTaskQueue(), new FailRunnable(uploadSelect, uploadIndex, fileName,
                contentType, new RuntimeException("No multi-part content!"), progress));
    } catch (final FileUploadBase.SizeLimitExceededException e) {
        app.enqueueTask(uploadSelect.getTaskQueue(), new FailRunnable(uploadSelect, uploadIndex, fileName,
                contentType, new UploadSizeLimitExceededException(e), progress));
    } catch (final FileUploadBase.FileSizeLimitExceededException e) {
        app.enqueueTask(uploadSelect.getTaskQueue(), new FailRunnable(uploadSelect, uploadIndex, fileName,
                contentType, new UploadSizeLimitExceededException(e), progress));
    } catch (final MultipartStream.MalformedStreamException e) {
        app.enqueueTask(uploadSelect.getTaskQueue(),
                new CancelRunnable(uploadSelect, uploadIndex, fileName, contentType, e, progress));
    }
}

From source file:com.gae.ImageServlet.java

@SuppressWarnings("unchecked")
public void doPost(HttpServletRequest req, HttpServletResponse resp) throws IOException {
    MemoryFileItemFactory factory = new MemoryFileItemFactory();
    ServletFileUpload upload = new ServletFileUpload(factory);
    //resp.setContentType("image/png");
    ServletOutputStream out = resp.getOutputStream();
    try {// ww  w.j av a2 s .  co m
        List<FileItem> list = upload.parseRequest(req);
        for (FileItem item : list) {
            if (!(item.isFormField())) {
                String fileName = item.getName();

                //Map<String, BlobKey> blobs = blobstoreService.getUploadedBlobs(req);
                //BlobKey blobKey = blobs.get("myFile");                 

                if (fileName != null && !"".equals(fileName)) {
                    int size = (int) item.getSize();
                    byte[] data = new byte[size];
                    InputStream in = item.getInputStream();
                    in.read(data);
                    //ImagesService imagesService = ImagesServiceFactory.getImagesService(); 

                    /*
                    Image oldImage = ImagesServiceFactory.makeImage(data); 
                    Transform resize = ImagesServiceFactory.makeResize(180, 150); 
                    Image newImage = imagesService.applyTransform(resize, oldImage, OutputEncoding.PNG); 
                    byte[] newImageData = newImage.getImageData();
                    out.write(newImageData);
                    */
                    /*
                    Image image = ImagesServiceFactory.makeImage(data); 
                    byte[] ImageData = image.getImageData();
                    */
                    out.flush();
                }
            }
        }
    } catch (FileUploadException e) {
        e.printStackTrace();
    } finally {
        if (out != null) {
            out.close();
        }
    }
}

From source file:com.servlet.tools.FileUploadHelper.java

private boolean CheckAndGetFilesSize(List<FileItem> fileItemList) {
    FileItem fileItem;
    int i;//from   w w  w  .  j  a  v a2s . c  o  m
    long sizeTemp;
    this.size = new long[this.fileCount];
    i = 0;
    sizeTemp = 0;
    for (int temp : this.validItemNumberList) {
        fileItem = fileItemList.get(temp);
        this.size[i] = fileItem.getSize();
        sizeTemp += this.size[i];
        i++;
    }
    this.totalSize = sizeTemp;
    return this.limitedSize > sizeTemp;
}

From source file:com.gae.ImageUpServlet.java

public void doPost(HttpServletRequest req, HttpServletResponse resp) throws IOException {
    //DatastoreService ds = DatastoreServiceFactory.getDatastoreService();
    //ReturnValue value = new ReturnValue();
    MemoryFileItemFactory factory = new MemoryFileItemFactory();
    ServletFileUpload upload = new ServletFileUpload(factory);
    resp.setContentType("image/jpeg");
    ServletOutputStream out = resp.getOutputStream();
    try {//from  www  .  java2 s .c o  m
        List<FileItem> list = upload.parseRequest(req);
        //FileItem list = upload.parseRequest(req);
        for (FileItem item : list) {
            if (!(item.isFormField())) {
                filename = item.getName();
                if (filename != null && !"".equals(filename)) {
                    int size = (int) item.getSize();
                    byte[] data = new byte[size];
                    InputStream in = item.getInputStream();
                    in.read(data);
                    ImagesService imagesService = ImagesServiceFactory.getImagesService();
                    Image newImage = ImagesServiceFactory.makeImage(data);
                    byte[] newImageData = newImage.getImageData();

                    //imgkey = KeyFactory.createKey(Imagedat.class.getSimpleName(), filename.split(".")[0]);   
                    //imgkey = KeyFactory.createKey(Imagedat.class.getSimpleName(), filename.split(".")[0]);   

                    out.write(newImageData);
                    out.flush();

                    DatastoreService ds = DatastoreServiceFactory.getDatastoreService();
                    Key key = KeyFactory.createKey(kind, skey);
                    Blob blobImage = new Blob(newImageData);
                    DirectBeans_textjson dbeans = new DirectBeans_textjson();
                    /*  ?Date?     */
                    //Entity entity = dbeans.setentity("add", kind, true, key, id, val);

                    //ReturnValue value = dbeans.Called.setentity("add", kind, true, key, id, val);
                    //Entity entity = value.entity;
                    //DirectBeans.ReturnValue value = new DirectBeans.ReturnValue();
                    DirectBeans_textjson.entityVal eval = dbeans.setentity("add", kind, true, key, id, val);
                    Entity entity = eval.entity;

                    /*  ?Date                         */
                    //for(int i=0; i<id.length; i++ ){
                    //   if(id[i].equals("image")){
                    //      //filetitle = val[i];
                    //      //imgkey = KeyFactory.createKey(Imagedat.class.getSimpleName(), val[i]);   
                    //   }
                    //}                

                    entity.setProperty("image", blobImage);
                    Date date = new Date();
                    SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd:HHmmss");
                    sdf.setTimeZone(TimeZone.getTimeZone("JST"));
                    entity.setProperty("moddate", sdf.format(date));
                    //DatastoreService ds = DatastoreServiceFactory.getDatastoreService();
                    ds.put(entity);
                    out.println("? KEY:" + key);
                }
            }
        }
    } catch (FileUploadException e) {
        e.printStackTrace();
    } finally {
        if (out != null) {
            out.close();
        }
    }
}

From source file:id.go.customs.training.gudang.web.BarangUploadServlet.java

@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
    Boolean adaFile = ServletFileUpload.isMultipartContent(req);
    if (adaFile) {
        try {/*from  w ww .j  a  v a 2 s  . c  o  m*/
            String lokasiLengkap = req.getServletContext().getRealPath(lokasiPenyimpanan);
            System.out.println("Lokasi hasil upload : " + lokasiLengkap);

            // inisialisasi prosesor upload
            DiskFileItemFactory factory = new DiskFileItemFactory();
            File lokasiSementaraHasilUpload = (File) req.getServletContext()
                    .getAttribute("javax.servlet.context.tempdir");
            factory.setRepository(lokasiSementaraHasilUpload);
            System.out.println("Lokasi upload sementara : " + lokasiSementaraHasilUpload.getAbsolutePath());
            ServletFileUpload prosesorUpload = new ServletFileUpload(factory);

            List<FileItem> hasilUpload = prosesorUpload.parseRequest(req);
            System.out.println("Jumlah file = " + hasilUpload.size());

            for (FileItem fileItem : hasilUpload) {
                System.out.println("----- Informasi File -----");
                System.out.println("Tipe File : " + fileItem.getContentType());
                System.out.println("Nama Field : " + fileItem.getFieldName());
                System.out.println("Nama File : " + fileItem.getName());
                System.out.println("Ukuran File : " + fileItem.getSize());

                String fileTujuan = lokasiLengkap + File.separator + fileItem.getName();
                File tujuan = new File(fileTujuan);
                fileItem.write(tujuan);
                System.out.println("Hasil upload ada di " + fileTujuan);

                HasilImportBarang hasil = BarangImporter.importCsv(tujuan);
                req.setAttribute("hasil", hasil);
            }
        } catch (Exception ex) {
            Logger.getLogger(BarangUploadServlet.class.getName()).log(Level.SEVERE, null, ex);
        }

    }

    // selesai upload, tampilkan hasil upload
    req.getRequestDispatcher("/WEB-INF/templates/jsp/barang/import.jsp").forward(req, resp);
}

From source file:com.app.framework.web.MultipartFilter.java

/**
 * Process multipart request item as file field. The name and FileItem
 * object of each file field will be added as attribute of the given
 * HttpServletRequest. If a FileUploadException has occurred when the file
 * size has exceeded the maximum file size, then the FileUploadException
 * will be added as attribute value instead of the FileItem object.
 *
 * @param fileField The file field to be processed.
 * @param request The involved HttpServletRequest.
 *///  w  ww.j  ava 2s  .co  m
private void processFileField(FileItem fileField, HttpServletRequest request) {
    if (fileField.getName().length() <= 0) {
        // No file uploaded.
        request.setAttribute(fileField.getFieldName(), null);
    } else if (maxFileSize > 0 && fileField.getSize() > maxFileSize) {
        // File size exceeds maximum file size.
        request.setAttribute(fileField.getFieldName(),
                new FileUploadException("File size exceeds maximum file size of " + maxFileSize + " bytes."));
        // Immediately delete temporary file to free up memory and/or disk space.
        fileField.delete();
    } else {
        // File uploaded with good size.
        request.setAttribute(fileField.getFieldName(), fileField);
    }
}

From source file:cpabe.controladores.UploadDecriptacaoServlet.java

protected void doPost(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {

    List<CaminhoArquivo> lista = new ArrayList<CaminhoArquivo>();
    List<File> lista2 = new ArrayList<File>();

    CaminhoArquivo c = new CaminhoArquivo();

    if (!ServletFileUpload.isMultipartContent(request)) {
        throw new ServletException("Content type is not multipart/form-data");
    }/*from   ww  w .  j  a va  2s  .  c  o m*/

    // response.setContentType("text/html");
    //  PrintWriter out = response.getWriter();
    // out.write("<html><head></head><body>");
    try {
        List<FileItem> fileItemsList = uploader.parseRequest(request);
        Iterator<FileItem> fileItemsIterator = fileItemsList.iterator();
        while (fileItemsIterator.hasNext()) {
            FileItem fileItem = fileItemsIterator.next();

            System.out.println("FieldName=" + fileItem.getFieldName());
            System.out.println("FileName=" + fileItem.getName());
            System.out.println("ContentType=" + fileItem.getContentType());
            System.out.println("Size in bytes=" + fileItem.getSize());

            File file = new File(request.getServletContext().getAttribute("FILES_DIR") + File.separator
                    + fileItem.getName());
            //setar no objeto CaminhoArquivo os dados do arquivo anexado
            String caminho = file.getAbsolutePath();
            String nome = fileItem.getName();

            c.setNome(nome);
            c.setWay(caminho);

            System.out.println("caminho=" + caminho);
            System.out.println("nome=" + nome);

            System.out.println("Absolute Path at server=" + file.getAbsolutePath());
            fileItem.write(file);

            lista2.add(file);
            // out.write("File " + fileItem.getName() + " uploaded successfully.");
            // out.write("<br>");
            // out.write("<a href=\"UploadDownloadFileServlet?fileName=" + fileItem.getName() + "\">Download " + fileItem.getName() + "</a>");
        }

    } catch (FileUploadException e) {
        //  out.write("Exception in uploading file.");
    } catch (Exception e) {
        //  out.write("Exception in uploading file.");
    }
    // out.write("</body></html>");
    //lendo a lista dos arquivos adicionados e pegando os caminhos do arquivo e da chave
    c.setWay(lista2.get(0).getAbsolutePath());
    c.setNome(lista2.get(0).getName());
    System.out.println("arquivo=" + lista2.get(0).getAbsolutePath());
    c.setChave(lista2.get(1).getAbsolutePath());
    System.out.println("chave=" + lista2.get(1).getAbsolutePath());

    request.setAttribute("caminho", c);

    request.getRequestDispatcher("/formularios/decriptar/decriptar2.jsp").forward(request, response);

}

From source file:net.formio.upload.MultipartRequestPreprocessor.java

private void convertToMaps(List<FileItem> fileItems) {
    for (FileItem item : fileItems) {
        String cts = item.getContentType();

        if (!item.isFormField()) {
            // not simple form field
            String filename = item.getName();
            long size = item.getSize(); // size in bytes
            // some browsers are sending "files" even if none is selected?
            if (size == 0
                    && ((cts == null || cts.isEmpty()) || "application/octet-stream".equalsIgnoreCase(cts))
                    && (filename == null || filename.isEmpty()))
                continue;

            String fileNameLastPart = filename;
            if (filename != null) {
                Matcher m = EXTRACT_LASTPART_PATTERN.matcher(filename);
                if (m.matches()) {
                    fileNameLastPart = m.group(1);
                }/*from w  w  w. j  a va 2  s.com*/
            }
            String mime = cts;
            if (mime == null) {
                mime = guessContentType(filename);
            }

            RequestUploadedFile file = new RequestUploadedFile(fileNameLastPart, mime, size, item);
            if (fileParams.get(item.getFieldName()) != null) {
                addMultivaluedFile(file, item);
            } else {
                addSingleValueFile(file, item);
            }
        } else {
            if (regularParams.get(item.getFieldName()) != null) {
                addMultivaluedItem(item);
            } else {
                addSingleValueItem(item);
            }
        }
    }
}

From source file:com.example.webapp.filter.MultipartFilter.java

/**
 * Process multipart request item as file field. The name and FileItem
 * object of each file field will be added as attribute of the given
 * HttpServletRequest. If a FileUploadException has occurred when the file
 * size has exceeded the maximum file size, then the FileUploadException
 * will be added as attribute value instead of the FileItem object.
 * /*  w  w  w .  j  a v a2  s .  co m*/
 * @param fileField The file field to be processed.
 * @param request The involved HttpServletRequest.
 */
private void processFileField(FileItem fileField, HttpServletRequest request) {
    if (fileField.getName().length() <= 0) {
        // No file uploaded.
        request.setAttribute(fileField.getFieldName(), null);
    } else if (maxFileSize > 0 && fileField.getSize() > maxFileSize) {
        // File size exceeds maximum file size.
        request.setAttribute(fileField.getFieldName(),
                new FileUploadException("File size exceeds maximum file size of " + maxFileSize + " bytes."));
        // Immediately delete temporary file to free up memory and/or disk
        // space.
        fileField.delete();
    } else {
        // File uploaded with good size.
        request.setAttribute(fileField.getFieldName(), fileField);
    }
}