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:edu.cornell.mannlib.vitro.webapp.controller.VitroRequest.java

/**
 * There may be more than one file item with the given name. If the first
 * one is empty (size is zero), keep looking for a non-empty one.
 *///  w w  w  .ja  v  a 2 s. co m
public FileItem getFileItem(String name) {
    Map<String, List<FileItem>> map = getFiles();
    List<FileItem> items = map.get(name);
    if (items == null) {
        return null;
    }
    for (FileItem item : items) {
        if (item.getSize() > 0L) {
            return item;
        }
    }
    return null;
}

From source file:com.lp.webapp.cc.CCOrderResponseServlet.java

private CreateOrderResult processEjbOrder(HttpServletResponse response, FileItem file) {
    myLogger.info("Receiving post with filename '" + file.getName() + "' (" + file.getSize() + ") bytes.");

    AuftragFacBeanRest a = new AuftragFacBeanRest();
    CreateOrderResult result = a.createOrder(authHeader, new String(file.get()));

    myLogger.info("Processed post with filename '" + file.getName() + "'. Status " + result.getRc());
    return result;
}

From source file:com.cloudbees.api.BeesClientTruProxyTest.java

@Test
public void deployWarArchive() throws Exception {
    CloudbeesServer cloudbeesServer = new CloudbeesServer();
    cloudbeesServer.startServer();/*from  w w w .  ja  va 2  s. c  om*/
    File local = new File("src/test/translate-puzzle-webapp-1.0.0-SNAPSHOT.war");
    File uploaded = File.createTempFile("uploaded", "foo");
    assertThat("We have the file to upload", local.isFile(), is(true));
    assertThat("We have created the temp file to be uploaded", uploaded.isFile(), is(true));
    assertThat("Precondition", local.length(), not(is(uploaded.length())));
    try {
        BeesClientConfiguration beesClientConfiguration = new BeesClientConfiguration(
                "http://localhost:" + cloudbeesServer.getPort() + "/", "foo", "bar", "xml", "1.0");
        BeesClient beesClient = new BeesClient(beesClientConfiguration);
        beesClient.setVerbose(true);
        MockUploadProgress mockUploadProgress = new MockUploadProgress();

        beesClient.applicationDeployWar("fooId", "env", "desc", local, null, mockUploadProgress);
        assertNotNull(cloudbeesServer.cloudbessServlet.items);
        int realFilesNumber = 0;

        for (FileItem fileItem : cloudbeesServer.cloudbessServlet.items) {
            log.info("fileItem " + fileItem.getName() + ", size " + fileItem.getSize());
            if (fileItem.getName() != null) {
                realFilesNumber++;
                fileItem.write(uploaded);
            }
        }
        assertEquals(1, realFilesNumber);
        assertThat("Postcondition", local.length(), is(uploaded.length()));
    } catch (Exception e) {
        throw e;
    } finally {
        cloudbeesServer.stopServer();
        uploaded.delete();
    }
}

From source file:edu.umd.cs.submitServer.servlets.UploadProjectStarterFiles.java

/**
 * The doPost method of the servlet. <br>
 * /*from  ww  w .ja  v  a 2 s . c o  m*/
 * This method is called when a form has its tag value method equals to
 * post.
 * 
 * @param request
 *            the request send by the client to the server
 * @param response
 *            the response send by the server to the client
 * @throws ServletException
 *             if an error occurred
 * @throws IOException
 *             if an error occurred
 */
@Override
public void doPost(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    MultipartRequest multipartRequest = (MultipartRequest) request.getAttribute(MULTIPART_REQUEST);
    Project project = (Project) request.getAttribute(PROJECT);

    Connection conn = null;
    FileItem fileItem = null;
    try {
        conn = getConnection();

        fileItem = multipartRequest.getFileItem();

        long sizeInBytes = fileItem.getSize();
        if (sizeInBytes == 0) {
            throw new ServletException("Trying upload file of size 0");
        }

        // copy the fileItem into a byte array
        InputStream is = fileItem.getInputStream();
        ByteArrayOutputStream bytes = new ByteArrayOutputStream((int) sizeInBytes);
        IO.copyStream(is, bytes);

        byte[] bytesForUpload = bytes.toByteArray();

        // set the byte array as the archive
        project.setArchiveForUpload(bytesForUpload);
        FormatDescription desc = FormatIdentification.identify(bytesForUpload);
        if (desc == null || !desc.getMimeType().equals("application/zip")) {
            response.sendError(HttpServletResponse.SC_BAD_REQUEST,
                    "You MUST submit starter files that are either zipped or jarred");
            return;
        }

        Integer archivePK = project.getArchivePK();
        if (archivePK == null || archivePK.equals(0)) {
            // If there is no archive, then upload and create a new one
            project.uploadCachedArchive(conn);
            project.update(conn);
        } else {
            // Otherwise, update the archive we already have
            project.updateCachedArchive(bytesForUpload, conn);
        }

        String redirectUrl = request.getContextPath() + "/view/instructor/projectUtilities.jsp?projectPK="
                + project.getProjectPK();
        response.sendRedirect(redirectUrl);

    } catch (SQLException e) {
        throw new ServletException(e);
    } finally {
        releaseConnection(conn);
    }
}

From source file:mx.org.cedn.avisosconagua.engine.processors.Init.java

/**
 * Processes an uploaded file and stores it in MongoDB.
 * @param item file item from the parsed servlet request
 * @param currentId ID for the current MongoDB object for the advice
 * @return file name/* w  w w  . j  a v  a  2  s  .  com*/
 * @throws IOException 
 */
private String processUploadedFile(FileItem item, String currentId) throws IOException {
    System.out.println("file: size=" + item.getSize() + " name:" + item.getName());
    GridFS gridfs = mi.getImagesFS();
    String filename = currentId + ":" + item.getFieldName() + "_" + item.getName();
    gridfs.remove(filename);
    GridFSInputFile gfsFile = gridfs.createFile(item.getInputStream());
    gfsFile.setFilename(filename);
    gfsFile.setContentType(item.getContentType());
    gfsFile.save();
    return filename;
}

From source file:it.eng.spagobi.tools.catalogue.service.SaveArtifactAction.java

private Content getContentFromRequest() {
    Content content = null;//from w w w  .j a v  a 2 s  . c o  m
    FileItem uploaded = (FileItem) getAttribute("UPLOADED_FILE");
    if (uploaded != null && uploaded.getSize() > 0) {
        checkUploadedFile(uploaded);
        String fileName = GeneralUtilities.getRelativeFileNames(uploaded.getName());
        content = new Content();
        content.setActive(new Boolean(true));
        UserProfile userProfile = (UserProfile) this.getUserProfile();
        content.setCreationUser(userProfile.getUserId().toString());
        content.setCreationDate(new Date());
        content.setDimension(Long.toString(uploaded.getSize() / 1000) + " KByte");
        content.setFileName(fileName);
        byte[] uplCont = uploaded.get();
        content.setContent(uplCont);
    } else {
        logger.debug("Uploaded file missing or it is empty");
    }
    return content;
}

From source file:ccc.plugins.multipart.apache.MultipartForm.java

/** {@inheritDoc} */
@Override// w  w w  .  j  av  a  2  s  . com
public long getSize(final String string) {
    final FileItem item = getFormItem(string);
    return (null == item) ? -1 : item.getSize();
}

From source file:com.themodernway.server.core.servlet.ContentUploadServlet.java

@Override
public void doPost(final HttpServletRequest request, final HttpServletResponse response)
        throws ServletException, IOException {
    try {//from w w w. j a  v  a  2 s .  c om
        final IFolderItem fold = getRoot();

        if (null == fold) {
            if (logger().isErrorEnabled()) {
                logger().error(LoggingOps.THE_MODERN_WAY_MARKER, "Can't find storage root.");
            }
            sendErrorCode(request, response, HttpServletResponse.SC_NOT_FOUND);

            return;
        }
        if (false == fold.isWritable()) {
            if (logger().isErrorEnabled()) {
                logger().error(LoggingOps.THE_MODERN_WAY_MARKER, "Can't write storage root.");
            }
            sendErrorCode(request, response, HttpServletResponse.SC_NOT_FOUND);

            return;
        }
        final String path = getPathNormalized(toTrimOrElse(request.getPathInfo(), FileUtils.SINGLE_SLASH));

        if (null == path) {
            if (logger().isErrorEnabled()) {
                logger().error(LoggingOps.THE_MODERN_WAY_MARKER, "Can't find path info.");
            }
            sendErrorCode(request, response, HttpServletResponse.SC_NOT_FOUND);

            return;
        }
        final ServletFileUpload upload = new ServletFileUpload(getDiskFileItemFactory());

        upload.setSizeMax(getFileSizeLimit());

        final List<FileItem> items = upload.parseRequest(request);

        for (final FileItem item : items) {
            if (false == item.isFormField()) {
                if (item.getSize() > fold.getFileSizeLimit()) {
                    item.delete();

                    if (logger().isErrorEnabled()) {
                        logger().error(LoggingOps.THE_MODERN_WAY_MARKER, "File size exceeds limit.");
                    }
                    sendErrorCode(request, response, HttpServletResponse.SC_REQUEST_ENTITY_TOO_LARGE);

                    return;
                }
                final IFileItem file = fold.file(FileUtils.concat(path, item.getName()));

                if (null != file) {
                    try (InputStream read = item.getInputStream()) {
                        fold.create(file.getPath(), read);
                    } catch (final IOException e) {
                        item.delete();

                        final IServletExceptionHandler handler = getServletExceptionHandler();

                        if ((null == handler) || (false == handler.handle(request, response,
                                getServletResponseErrorCodeManagerOrDefault(), e))) {
                            if (logger().isErrorEnabled()) {
                                logger().error(LoggingOps.THE_MODERN_WAY_MARKER, "Can't write file.", e);
                            }
                            sendErrorCode(request, response, HttpServletResponse.SC_INTERNAL_SERVER_ERROR);
                        }
                        return;
                    }
                } else {
                    item.delete();

                    if (logger().isErrorEnabled()) {
                        logger().error(LoggingOps.THE_MODERN_WAY_MARKER, "Can't find file.");
                    }
                    sendErrorCode(request, response, HttpServletResponse.SC_NOT_FOUND);

                    return;
                }
            }
            item.delete();
        }
    } catch (IOException | FileUploadException e) {
        final IServletExceptionHandler handler = getServletExceptionHandler();

        if ((null == handler) || (false == handler.handle(request, response,
                getServletResponseErrorCodeManagerOrDefault(), e))) {
            if (logger().isErrorEnabled()) {
                logger().error(LoggingOps.THE_MODERN_WAY_MARKER, "captured overall exception for security.", e);
            }
            sendErrorCode(request, response, HttpServletResponse.SC_INTERNAL_SERVER_ERROR);
        }
    }
}

From source file:mx.org.cedn.avisosconagua.engine.processors.Init.java

@Override
public void processForm(HttpServletRequest request, String[] parts, String currentId)
        throws ServletException, IOException {
    HashMap<String, String> parametros = new HashMap<>();
    boolean fileflag = false;
    AvisosException aex = null;/*from   w w  w  . j  av a 2 s .  c om*/
    if (ServletFileUpload.isMultipartContent(request)) {
        try {
            DiskFileItemFactory factory = new DiskFileItemFactory();
            factory.setSizeThreshold(MAX_SIZE);
            ServletFileUpload upload = new ServletFileUpload(factory);
            upload.setSizeMax(MAX_SIZE);
            List<FileItem> items = upload.parseRequest(request);
            String filename = null;
            for (FileItem item : items) {
                if (!item.isFormField() && item.getSize() > 0) {
                    filename = processUploadedFile(item, currentId);
                    //System.out.println("poniendo: "+ item.getFieldName() + "=" +filename);
                    parametros.put(item.getFieldName(), filename);
                } else {
                    //                    System.out.println("item:" + item.getFieldName() + "=" + new String(item.getString().getBytes("ISO8859-1")));
                    //                    parametros.put(item.getFieldName(), new String(item.getString().getBytes("ISO8859-1")));
                    //                    System.out.println("item:" + item.getFieldName() + "=" + item.getString());
                    //                    System.out.println("item:" + item.getFieldName() + "=" + new String(item.getString().getBytes("ISO8859-1"),"UTF-8"));
                    //                    System.out.println("item:" + item.getFieldName() + "=" + new String(item.getString().getBytes("ISO8859-1")));
                    //                    System.out.println("item:" + item.getFieldName() + "=" + new String(item.getString().getBytes("UTF-8"),"UTF-8"));
                    parametros.put(item.getFieldName(),
                            new String(item.getString().getBytes("ISO8859-1"), "UTF-8"));
                }
            }
        } catch (FileUploadException fue) {
            fue.printStackTrace();
            fileflag = true;
            aex = new AvisosException("El archivo sobrepasa el tamao de " + MAX_SIZE + " bytes", fue);
        }
    } else {
        for (Map.Entry<String, String[]> entry : request.getParameterMap().entrySet()) {
            //                try {
            //                    parametros.put(entry.getKey(), new String(request.getParameter(entry.getKey()).getBytes("ISO8859-1")));
            //                } catch (UnsupportedEncodingException ue) {
            //                    //No debe llegar a este punto
            //                    assert false;
            //                }
            parametros.put(entry.getKey(), request.getParameter(entry.getKey()));
        }
    }
    BasicDBObject anterior = (BasicDBObject) mi.getAdvice(currentId).get(parts[3]);
    procesaAreas(parametros, anterior);
    procesaImagen(parametros, anterior);
    MongoInterface.getInstance().savePlainData(currentId, parts[3], parametros);

    if (fileflag) {
        throw aex;
    }
}

From source file:fr.paris.lutece.plugins.asynchronousupload.service.AbstractAsynchronousUploadHandler.java

/**
 * {@inheritDoc}/*ww  w.  j  a  v  a  2  s  . com*/
 */
@Override
public void addFilesUploadedSynchronously(HttpServletRequest request, String strFieldName) {
    if (request instanceof MultipartHttpServletRequest && hasAddFileFlag(request, strFieldName)) {
        MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
        List<FileItem> listFileItem = multipartRequest.getFileList(strFieldName);

        if ((listFileItem != null) && (listFileItem.size() > 0)) {
            for (FileItem fileItem : listFileItem) {
                if ((fileItem.getSize() > 0L) && StringUtils.isNotEmpty(fileItem.getName())) {
                    addFileItemToUploadedFilesList(fileItem, strFieldName, request);
                }
            }
        }
    }
}