Example usage for org.apache.commons.fileupload.servlet ServletFileUpload parseRequest

List of usage examples for org.apache.commons.fileupload.servlet ServletFileUpload parseRequest

Introduction

In this page you can find the example usage for org.apache.commons.fileupload.servlet ServletFileUpload parseRequest.

Prototype

public List  parseRequest(HttpServletRequest request) throws FileUploadException 

Source Link

Document

Processes an <a href="http://www.ietf.org/rfc/rfc1867.txt">RFC 1867</a> compliant <code>multipart/form-data</code> stream.

Usage

From source file:com.aptechfpt.controller.InsertSalePerson.java

protected void Register(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    try {//www . j a v  a  2 s.  co  m
        boolean isMultipartContext = ServletFileUpload.isMultipartContent(request);
        FileItemFactory factory = new DiskFileItemFactory();
        ServletFileUpload upload = new ServletFileUpload(factory);
        List<FileItem> fields = upload.parseRequest(request);
        AccountDTO.Builder builder = new AccountDTO.Builder();

        for (Iterator<FileItem> it = fields.iterator(); it.hasNext();) {
            FileItem fileItem = it.next();
            switch (fileItem.getFieldName()) {
            case "email":
                System.out.println("email: " + fileItem.getString());
                builder.Email(fileItem.getString());
                continue;
            case "password":
                System.out.println("password: " + fileItem.getString());
                builder.Password(fileItem.getString());
                continue;
            case "image":
                System.out.println("image: " + fileItem.getName());
                builder.ImageLink(writeFile(fileItem));
                continue;
            case "firstName":
                System.out.println("firstName: " + fileItem.getString());
                builder.FirstName(fileItem.getString());
                continue;
            case "lastName":
                System.out.println("lastName: " + fileItem.getString());
                builder.LastName(fileItem.getString());
                continue;
            case "phone":
                System.out.println("phone: " + fileItem.getString());
                builder.Phone(fileItem.getString());
                continue;
            case "address":
                System.out.println("address: " + fileItem.getString());
                builder.Address(fileItem.getString());
                continue;
            case "gender":
                System.out.println("gender: " + fileItem.getString());
                builder.Gender(AccountGender.valueOf(fileItem.getString()));
                continue;
            //                    case "role":
            //                        System.out.println("role: " + fileItem.getString());
            //                        builder.Role(Role.valueOf(fileItem.getString()));
            case "dateOfBirth":
                System.out.println("dateOfBirth: " + fileItem.getString());
                builder.DateOfBirth(new DateTime(fileItem.getString()));
            }
        }
        builder.Role(Role.SALEPERSON);
        AccountDTO dto = builder.build();
        System.out.println("Email: " + dto.getEmail());
        System.out.println("Password: " + dto.getPassword());
        System.out.println("Image Link: " + dto.getImageLink());
        System.out.println("First Name: " + dto.getFirstName());
        System.out.println("Last Name: " + dto.getLastName());
        System.out.println("Gender: " + dto.getGender());
        System.out.println("Phone: " + dto.getPhone());
        System.out.println("Address: " + dto.getAddress());
        System.out.println("Date Of Birth: " + dto.getDateOfBirth());
        accountFacade.create(dto.toAccount());
        StringBuilder jsonRes = new StringBuilder();
        jsonRes.append("{\"message\":").append("\"Account ").append(dto.getEmail())
                .append(" create successfull.").append("\"}");

        response.setContentType("application/json");
        PrintWriter out = response.getWriter();
        out.print(jsonRes.toString());
        out.close();
    } catch (FileUploadException ex) {
        ex.printStackTrace();
        Logger.getLogger(InsertSalePerson.class.getName()).log(Level.SEVERE, null, ex);
    }
}

From source file:com.ikon.servlet.admin.CheckTextExtractionServlet.java

@SuppressWarnings("unchecked")
public void doPost(HttpServletRequest request, HttpServletResponse response)
        throws IOException, ServletException {
    log.debug("doPost({}, {})", request, response);
    request.setCharacterEncoding("UTF-8");
    updateSessionManager(request);/*  w w w. jav a 2s .com*/
    InputStream is = null;

    try {
        if (ServletFileUpload.isMultipartContent(request)) {
            FileItemFactory factory = new DiskFileItemFactory();
            ServletFileUpload upload = new ServletFileUpload(factory);
            List<FileItem> items = upload.parseRequest(request);
            String docUuid = null;
            String repoPath = null;
            String text = null;
            String mimeType = null;
            String extractor = null;

            for (Iterator<FileItem> it = items.iterator(); it.hasNext();) {
                FileItem item = it.next();

                if (item.isFormField()) {
                    if (item.getFieldName().equals("docUuid")) {
                        docUuid = item.getString("UTF-8");
                    } else if (item.getFieldName().equals("repoPath")) {
                        repoPath = item.getString("UTF-8");
                    }
                } else {
                    is = item.getInputStream();
                    String name = FilenameUtils.getName(item.getName());
                    mimeType = MimeTypeConfig.mimeTypes.getContentType(name.toLowerCase());

                    if (!name.isEmpty() && item.getSize() > 0) {
                        docUuid = null;
                        repoPath = null;
                    } else if (docUuid.isEmpty() && repoPath.isEmpty()) {
                        mimeType = null;
                    }
                }
            }

            if (docUuid != null && !docUuid.isEmpty()) {
                repoPath = OKMRepository.getInstance().getNodePath(null, docUuid);
            }

            if (repoPath != null && !repoPath.isEmpty()) {
                String name = PathUtils.getName(repoPath);
                mimeType = MimeTypeConfig.mimeTypes.getContentType(name.toLowerCase());
                is = OKMDocument.getInstance().getContent(null, repoPath, false);
            }

            long begin = System.currentTimeMillis();

            if (is != null) {
                if (!MimeTypeConfig.MIME_UNDEFINED.equals(mimeType)) {
                    TextExtractor extClass = RegisteredExtractors.getTextExtractor(mimeType);

                    if (extClass != null) {
                        extractor = extClass.getClass().getCanonicalName();
                        text = RegisteredExtractors.getText(mimeType, null, is);
                    } else {
                        extractor = "Undefined text extractor";
                    }
                }
            }

            ServletContext sc = getServletContext();
            sc.setAttribute("docUuid", docUuid);
            sc.setAttribute("repoPath", repoPath);
            sc.setAttribute("text", text);
            sc.setAttribute("time", System.currentTimeMillis() - begin);
            sc.setAttribute("mimeType", mimeType);
            sc.setAttribute("extractor", extractor);
            sc.getRequestDispatcher("/admin/check_text_extraction.jsp").forward(request, response);
        }
    } catch (DatabaseException e) {
        sendErrorRedirect(request, response, e);
    } catch (FileUploadException e) {
        sendErrorRedirect(request, response, e);
    } catch (PathNotFoundException e) {
        sendErrorRedirect(request, response, e);
    } catch (AccessDeniedException e) {
        sendErrorRedirect(request, response, e);
    } catch (RepositoryException e) {
        sendErrorRedirect(request, response, e);
    } finally {
        IOUtils.closeQuietly(is);
    }
}

From source file:com.bluelotussoftware.apache.commons.fileupload.example.CommonsFileUploadServlet.java

@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    PrintWriter out = response.getWriter();
    response.setContentType("text/html");
    log("Content-Type: " + request.getContentType());

    DiskFileItemFactory fileItemFactory = new DiskFileItemFactory();
    /*/*from  w  w w.  j  a  v  a  2s .  c  o m*/
     *Set the size threshold, above which content will be stored on disk.
     */
    fileItemFactory.setSizeThreshold(10 * 1024 * 1024); //10 MB
    /*
    * Set the temporary directory to store the uploaded files of size above threshold.
    */
    fileItemFactory.setRepository(tmpDir);

    ServletFileUpload uploadHandler = new ServletFileUpload(fileItemFactory);
    try {
        /*
         * Parse the request
         */
        List items = uploadHandler.parseRequest(request);
        log("FileItems: " + items.toString());
        Iterator itr = items.iterator();
        while (itr.hasNext()) {

            FileItem item = (FileItem) itr.next();
            /*
             * Handle Form Fields.
             */
            if (item.isFormField()) {
                out.println("File Name = " + item.getFieldName() + ", Value = " + item.getString());
            } else {
                //Handle Uploaded files.
                out.println("<html><head><title>CommonsFileUploadServlet</title></head><body><p>");
                out.println("Field Name = " + item.getFieldName() + "\nFile Name = " + item.getName()
                        + "\nContent type = " + item.getContentType() + "\nFile Size = " + item.getSize());
                out.println("</p>");
                out.println("<img src=\"" + request.getContextPath() + "/files/" + item.getName() + "\"/>");
                out.println("</body></html>");
                /*
                 * Write file to the ultimate location.
                 */
                File file = new File(destinationDir, item.getName());
                item.write(file);
            }
            out.close();
        }
    } catch (FileUploadException ex) {
        log("Error encountered while parsing the request", ex);
    } catch (Exception ex) {
        log("Error encountered while uploading file", ex);
    }
}

From source file:com.flexive.war.servlet.CeFileUpload.java

@Override
public void service(ServletRequest servletRequest, ServletResponse servletResponse)
        throws ServletException, IOException {
    String renderContent = null;//from  w  ww. j a  v  a2  s.co m
    try {

        final HttpServletRequest request = (HttpServletRequest) servletRequest;
        final BeContentEditorBean ceb = null; // = ContentEditorBean.getSingleton().getInstance(request);

        if (ceb == null) {
            renderContent = "No Content Editor Bean is active";
        } else {

            // Create a factory for disk-based file items
            FileItemFactory factory = new DiskFileItemFactory();

            // Create a new file upload handler
            ServletFileUpload upload = new ServletFileUpload(factory);

            // Parse the request
            List /* FileItem */ items = upload.parseRequest(request);

            BinaryDescriptor binary = null;

            String xpath = null;
            for (Object item1 : items) {
                FileItem item = (FileItem) item1;
                if (item.isFormField()) {
                    if (item.getFieldName().equalsIgnoreCase("result")) {
                        renderContent = item.getString().replaceAll("\\\\n", "\\\n");
                    } else if (item.getFieldName().equalsIgnoreCase("xpath")) {
                        xpath = item.getString();
                    }
                } else {
                    InputStream uploadedStream = null;
                    try {
                        uploadedStream = item.getInputStream();
                        String name = item.getName();
                        if (name.indexOf('\\') > 0)
                            name = name.substring(name.lastIndexOf('\\') + 1);
                        binary = new BinaryDescriptor(name, item.getSize(), uploadedStream);
                    } finally {
                        if (uploadedStream != null)
                            uploadedStream.close();
                    }
                }
                //                    System.out.println("Item: " + item.getName());
            }

            //FxContent co = ceb.getContent();
            FxBinary binProperty = new FxBinary(binary);
            //co.setValue(xpath, binProperty);
            //ceb.getContentEngine().prepareSave(co);
        }
    } catch (Throwable t) {
        System.err.println(t.getMessage());
        t.printStackTrace();
        renderContent = t.getMessage();
    }

    // Render the result
    PrintWriter w = servletResponse.getWriter();
    if (renderContent == null) {
        renderContent = "No content";
    }
    w.print(renderContent);
    w.close();
    servletResponse.setContentType("text/html");
    servletResponse.setContentLength(renderContent.length());
    ((HttpServletResponse) servletResponse).setStatus(HttpServletResponse.SC_OK);
}

From source file:com.rubinefocus.admin.servlet.UploadAdminImage.java

/**
 * Handles the HTTP <code>POST</code> method.
 *
 * @param request servlet request/*from  ww  w.  ja  v a 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
 */
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    File f = new File(this.getServletContext().getRealPath("admin/assets/images/adminPic"));
    String savePath = f.getPath();
    savePath = savePath.replace("%20", " ");
    savePath = savePath.replace("build", "");
    String fileName = "";

    boolean isMultipart = ServletFileUpload.isMultipartContent(request);

    // process only if its multipart content
    if (isMultipart) {
        // Create a factory for disk-based file items
        FileItemFactory factory = new DiskFileItemFactory();

        // Create a new file upload handler
        ServletFileUpload upload = new ServletFileUpload(factory);
        try {
            // Parse the request
            List<FileItem> multiparts = upload.parseRequest(request);

            for (FileItem item : multiparts) {
                if (!item.isFormField()) {
                    fileName = new File(item.getName()).getName();
                    File file = new File(savePath + "/" + fileName);

                    if (file.exists()) {
                        String fileNameWithOutExt = FilenameUtils.removeExtension(fileName);
                        String ext = FilenameUtils.getExtension(fileName);
                        fileName = fileNameWithOutExt
                                + new SimpleDateFormat("dd-MM-yyyy HH:mm:ss").format(new Date()) + "." + ext;
                        fileName = fileName.replace(" ", "");
                        fileName = fileName.replace("-", "");
                        fileName = fileName.replace(":", "");
                        item.write(new File(savePath + File.separator + fileName));

                    } else {
                        item.write(new File(savePath + File.separator + fileName));

                    }
                    Gson gson = new Gson();
                    response.setContentType("application/json");
                    response.setCharacterEncoding("UTF-8");

                    response.getWriter().write(gson.toJson(fileName));
                }
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

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   www .  j  a  va  2s  .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:Emporium.Servlet.ServImportaVpne.java

/**
 * Processes requests for both HTTP <code>GET</code> and <code>POST</code>
 * methods./*from w ww. j  ava 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 {
    HttpSession sessao = request.getSession();
    String nomeBD = (String) sessao.getAttribute("nomeBD");

    boolean isMultiPart = FileUpload.isMultipartContent(request);
    int idCliente = 0, idDepartamento = 0;

    if (nomeBD != null) {
        if (isMultiPart) {
            try {
                FileItemFactory factory = new DiskFileItemFactory();
                ServletFileUpload upload = new ServletFileUpload(factory);
                upload.setSizeMax(1024 * 1024 * 2);

                List items = upload.parseRequest(request);
                Iterator iter = items.iterator();
                ArrayList<FileItem> listaArq = new ArrayList<>();

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

                        if (item.getFieldName().equals("idCliente")) {
                            idCliente = Integer.parseInt(item.getString());
                        }
                        if (item.getFieldName().equals("idDepartamento")) {
                            idDepartamento = Integer.parseInt(item.getString());
                        }
                    }
                    if (!item.isFormField()) {
                        if (item.getName().length() > 0) {
                            listaArq.add(item);
                        }
                    }
                }
                if (listaArq.isEmpty()) {
                    response.sendRedirect("Cliente/Servicos/vpne.jsp?msg=Escolha um arquivo para importacao !");
                } else if (listaArq.size() > 200) {
                    response.sendRedirect(
                            "Cliente/Servicos/vpne.jsp?msg=Importacao maxima de 200 arquivos de cada vez!");
                } else {

                    String condicao = ContrVpne.importaPedidoVpne(listaArq, idCliente, idDepartamento, nomeBD);

                    if (condicao.startsWith("ERRO")) {
                        response.sendRedirect("Cliente/Servicos/vpne.jsp?msg=" + condicao);
                    } else {
                        response.sendRedirect("Cliente/Servicos/vpne.jsp?msg=" + condicao);
                    }
                }

            } catch (FileUploadException ex) {
                response.sendRedirect("Cliente/Servicos/vpne.jsp?msg=Falha na importacao!\n" + ex);
            } catch (Exception ex) {
                response.sendRedirect("Cliente/Servicos/vpne.jsp?msg=Falha na importacao!\n" + ex);
            }

        } else {
            response.sendRedirect("Cliente/Servicos/vpne.jsp?msg=is not a multipart form");
        }
    } else {
        response.sendRedirect("Cliente/Servicos/vpne.jsp?msg=Sua sessao expirou!");
    }
}

From source file:Emporium.Servlet.ServImportarDestinatario.java

/**
 * Processes requests for both HTTP <code>GET</code> and <code>POST</code>
 * methods./*w w w . jav a 2 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 IOException {
    HttpSession sessao = request.getSession();
    String nomeBD = (String) sessao.getAttribute("nomeBD");
    if (nomeBD != null) {
        boolean isMultiPart = FileUpload.isMultipartContent(request);
        int idCliente = 0;
        int idDepartamento = 0;
        if (isMultiPart) {
            try {
                FileItemFactory factory = new DiskFileItemFactory();
                ServletFileUpload upload = new ServletFileUpload(factory);
                upload.setSizeMax(1024 * 1024 * 2);

                List items = upload.parseRequest(request);
                Iterator iter = items.iterator();
                FileItem itemImg = null;

                while (iter.hasNext()) {
                    FileItem item = (FileItem) iter.next();
                    if (item.isFormField()) {
                        if (item.getFieldName().equals("idCliente")) {
                            idCliente = Integer.parseInt(item.getString());
                        }
                        if (item.getFieldName().equals("idDepartamento")) {
                            idDepartamento = Integer.parseInt(item.getString());
                        }
                    }
                    if (!item.isFormField()) {
                        if (item.getName().length() > 0) {
                            itemImg = item;
                        }
                    }
                }

                if (!itemImg.getName().toUpperCase().endsWith(".CSV")
                        && !itemImg.getName().toUpperCase().endsWith(".TXT")) {
                    response.sendRedirect(
                            "Cliente/Cadastros/destinatario_lista.jsp?msg=Escolha um arquivo para importacao !");
                } else {
                    //CONSULTA DADOS DO CLIENTE/DEPARTAMENTO/CONTRATO
                    Clientes cli = contrCliente.consultaClienteById(idCliente, nomeBD);
                    if (cli != null) {
                        String condicao = ContrDestinatarioImporta.importaPedido(itemImg, idCliente,
                                idDepartamento, nomeBD);
                        response.sendRedirect("Cliente/Cadastros/destinatario_lista.jsp?msg=" + condicao);
                    } else {
                        response.sendRedirect(
                                "Cliente/Cadastros/destinatario_lista.jsp?msg=Cliente nao encontrado no banco de dados!");
                    }
                }
            } catch (FileUploadException ex) {
                response.sendRedirect(
                        "Cliente/Cadastros/destinatario_lista.jsp?msg=Falha no Upload do Arquivo de Importacao!\n"
                                + ex);
            } catch (Exception ex) {
                response.sendRedirect(
                        "Cliente/Cadastros/destinatario_lista.jsp?msg=Falha na importacao!\n" + ex);
            }

        }
    } else {
        response.sendRedirect("Cliente/Cadastros/destinatario_lista.jsp?msg=Sua sessao expirou!");
    }
}

From source file:br.com.bluesoft.pronto.controller.SprintController.java

@SuppressWarnings("unchecked")
private byte[] getImageBytes(final HttpServletRequest request) throws FileUploadException, IOException {
    final FileItemFactory factory = new DiskFileItemFactory();
    final ServletFileUpload upload = new ServletFileUpload(factory);
    byte bytes[] = null;
    final List<FileItem> items = upload.parseRequest(request);
    for (final FileItem fileItem : items) {
        final InputStream inputStream = fileItem.getInputStream();
        final int numberBytes = inputStream.available();
        bytes = new byte[numberBytes];
        inputStream.read(bytes);/*  w  w w .ja  v a 2  s  .  c  om*/
    }
    return bytes;
}

From source file:control.UploadFile.java

protected void processRequest(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    response.setContentType("text/html;charset=UTF-8");
    PrintWriter out = response.getWriter();
    try {/*from  w w  w.  ja  va  2  s.c o m*/
        boolean ismultipart = ServletFileUpload.isMultipartContent(request);
        if (!ismultipart) {
        } else {
            FileItemFactory factory = new DiskFileItemFactory();
            ServletFileUpload upload = new ServletFileUpload(factory);

            List items = null;
            System.out.println(request);
            try {
                items = upload.parseRequest(request);
            } catch (Exception e) {

            }
            Iterator itr = items.iterator();
            while (itr.hasNext()) {
                FileItem item = (FileItem) itr.next();
                if (item.isFormField()) {

                } else {
                    String itemname = item.getName();
                    if (itemname == null || itemname.equals("")) {
                        continue;
                    }
                    String filename = FilenameUtils.getName(itemname);
                    File f = checkExist(filename);
                    item.write(f);
                    request.getRequestDispatcher("/ideaCreated.jsp").forward(request, response);
                }
            }
        }
    } catch (Exception e) {
    } finally {
        out.close();
    }
}