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

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

Introduction

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

Prototype

public ServletFileUpload() 

Source Link

Document

Constructs an uninitialised instance of this class.

Usage

From source file:DBMS.PicUpdateServlet.java

/**
 * Handles the HTTP <code>POST</code> method.
 *
 * @param request servlet request/*from w  w w  . j  a v  a  2 s . c om*/
 * @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 {
    response.setContentType("text/html;charset=UTF-8");
    boolean isMultiPart = ServletFileUpload.isMultipartContent(request);
    if (isMultiPart) {
        ServletFileUpload upload = new ServletFileUpload();
        try {
            FileItemIterator itr = upload.getItemIterator(request);
            while (itr.hasNext()) {
                FileItemStream item = itr.next();
                if (item.isFormField()) {
                    String fieldName = item.getFieldName();
                    InputStream is = item.openStream();
                    byte[] b = new byte[is.available()];
                    is.read(b);
                    String value = new String(b);
                    System.out.println("Getting");
                } else {
                    String path = getServletContext().getRealPath("/");
                    loginid lid = null;
                    HttpSession session = request.getSession();
                    lid = (loginid) session.getAttribute("lid");
                    int id = lid.getId();
                    if (UpdateFileUpload.processFile(path, item, id)) {
                        response.sendRedirect("ProfilePicUpdateSuccess.jsp");
                    } else
                        response.sendRedirect("ProfilePicUpdateFailed.jsp");
                }
            }
        } catch (FileUploadException e) {
            e.printStackTrace();
        }
    }
}

From source file:com.google.dotorg.translation_workflow.servlet.UploadServlet.java

@Override
public void doPost(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException, MalformedURLException {
    String rawProjectId = request.getParameter("projectId");
    try {/*w  w w  . jav a2s  . co m*/
        ServletFileUpload upload = new ServletFileUpload();
        upload.setSizeMax(1048576);
        UserService userService = UserServiceFactory.getUserService();
        User user = userService.getCurrentUser();
        Cloud cloud = Cloud.open();

        int projectId = Integer.parseInt(rawProjectId);
        Project project = cloud.getProjectById(projectId);
        TextValidator nameValidator = TextValidator.BRIEF_STRING;
        String invalidRows = "";
        int validRows = 0;

        try {
            FileItemIterator iterator = upload.getItemIterator(request);
            int articlesLength = 0;
            while (iterator.hasNext()) {
                FileItemStream item = iterator.next();
                InputStream in = item.openStream();

                if (item.isFormField()) {
                } else {
                    String fieldName = item.getFieldName();
                    String fileName = item.getName();
                    String contentType = item.getContentType();
                    String fileContents = null;
                    if (!contentType.equalsIgnoreCase("text/csv")) {
                        logger.warning("Invalid filetype upload " + contentType);
                        response.sendRedirect(
                                "/project_overview?project=" + rawProjectId + "&msg=invalid_type");
                    }
                    try {
                        fileContents = IOUtils.toString(in);
                        PersistenceManager pm = cloud.getPersistenceManager();
                        Transaction tx = pm.currentTransaction();
                        tx.begin();
                        String[] lines = fileContents.split("\n");
                        List<Translation> newTranslations = new ArrayList<Translation>();
                        articlesLength = lines.length;
                        validRows = articlesLength;
                        int lineNo = 0;
                        for (String line : lines) {
                            lineNo++;
                            line = line.replaceAll("\",", "\";");
                            line = line.replaceAll("\"", "");
                            String[] fields = line.split(";");
                            String articleName = fields[0].replace("_", " ");
                            articleName = nameValidator.filter(URLDecoder.decode(articleName));
                            try {
                                URL url = new URL(fields[1]);
                                String category = "";
                                String difficulty = "";
                                if (fields.length > 2) {
                                    category = nameValidator.filter(fields[2]);
                                }
                                if (fields.length > 3) {
                                    difficulty = nameValidator.filter(fields[3]);
                                }
                                Translation translation = project.createTranslation(articleName, url.toString(),
                                        category, difficulty);
                                newTranslations.add(translation);
                            } catch (MalformedURLException e) {
                                validRows--;
                                invalidRows = invalidRows + "," + lineNo;
                                logger.warning("Invalid URL : " + fields[1]);

                            }
                        }
                        pm.makePersistentAll(newTranslations);
                        tx.commit();
                    } finally {
                        IOUtils.closeQuietly(in);
                    }

                }
            }
            cloud.close();
            logger.info(validRows + " of " + articlesLength + " articles uploaded from csv to the project "
                    + project.getId() + " by User :" + user.getUserId());
            if (invalidRows.length() > 0) {
                response.sendRedirect(
                        "/project_overview?project=" + rawProjectId + "&_invalid=" + invalidRows.substring(1));
            } else {
                response.sendRedirect("/project_overview?project=" + rawProjectId);
            }
            /*response.sendRedirect("/project_overview?project=" + rawProjectId +
                "&_invalid=" + invalidRows.substring(1));*/
        } catch (SizeLimitExceededException e) {

            logger.warning("Exceeded the maximum size (" + e.getPermittedSize() + ") of the file ("
                    + e.getActualSize() + ")");
            response.sendRedirect("/project_overview?project=" + rawProjectId + "&msg=size_exceeded");
        }
    } catch (Exception ex) {
        logger.info("String " + ex.toString());
        throw new ServletException(ex);

    }
}

From source file:br.edu.ifpb.sislivros.model.ProcessadorFotos.java

public String processarArquivo(HttpServletRequest request, String nameToSave)
        throws ServletException, IOException {

    boolean isMultipart = ServletFileUpload.isMultipartContent(request);

    if (isMultipart) {
        ServletFileUpload upload = new ServletFileUpload();
        try {// w ww  . j a  v a 2s.c  o  m
            FileItemIterator itr = upload.getItemIterator(request);

            while (itr.hasNext()) {
                FileItemStream item = itr.next();
                if (!item.isFormField()) {
                    //                        pode ser tb sem a barra ????
                    //                        String path = request.getServletContext().getRealPath("");
                    String contextPath = request.getServletContext().getRealPath("/");

                    //refatorar aqui apenas para salvarimagem receber um pasta, inputStream e o nome
                    //aqui, criar um inputStream atravs do arquivo item antes de enviar
                    //diminuir 1 mtodo, deixando salvarImagem mais genrico
                    if (salvarImagem(contextPath + File.separator + folder, item, nameToSave)) {
                        return folder + "/" + nameToSave;
                    }
                }
            }

        } catch (FileUploadException ex) {
            System.out.println("erro ao obter informaoes sobre o arquivo");
        }

    } else {
        System.out.println("Erro no formulario!");
    }

    return null;
}

From source file:com.intuit.tank.util.UserNameFilterTest.java

/**
 * Run the void doFilter(ServletRequest,ServletResponse,FilterChain) method test.
 *
 * @throws Exception/*from   ww  w.  ja va2s  .  c om*/
 *
 * @generatedBy CodePro at 12/15/14 3:53 PM
 */
@Test(expected = java.io.IOException.class)
public void testDoFilter_2() throws Exception {
    UserNameFilter fixture = new UserNameFilter();
    ServletRequest request = new JerseyAdaptedHttpServletRequest(
            new MultipartRequest(new DummyRequest(), new ServletFileUpload()), new MediaType());
    ServletResponse response = new JerseyAdaptedHttpServletResponse(new DummyResponse(), (WebApplication) null);
    FilterChain chain = null;

    fixture.doFilter(request, response, chain);

}

From source file:com.oddprints.servlets.Edit.java

@POST
@Path("/basic")
@Produces(MediaType.TEXT_HTML)//ww  w . j  av a 2s.  c  om
public Viewable doPost(@Context HttpServletRequest req)
        throws FileUploadException, IOException, URISyntaxException {
    // Get the image representation
    ServletFileUpload upload = new ServletFileUpload();
    FileItemIterator iter = upload.getItemIterator(req);
    FileItemStream imageItem = iter.next();
    InputStream imgStream = imageItem.openStream();
    byte[] bytes = IOUtils.toByteArray(imgStream);

    BlobKey blobKey = ImageBlobStore.INSTANCE.writeImageData(bytes);
    req.getSession().setAttribute("blobKeyString", blobKey.getKeyString());
    req.getSession().setAttribute("blobSize", bytes.length + "");
    req.getSession().setAttribute("basicMode", Boolean.TRUE);

    return viewBasic(req);
}

From source file:com.fullmetalgalaxy.server.pm.PMServlet.java

@Override
protected void doPost(HttpServletRequest p_request, HttpServletResponse p_response)
        throws ServletException, IOException {
    ServletFileUpload upload = new ServletFileUpload();
    try {//from  ww  w  .j  a v  a  2 s  . c o  m
        // build message to send
        Properties props = new Properties();
        Session session = Session.getDefaultInstance(props, null);
        MimeMessage msg = new MimeMessage(session);
        msg.setSubject("[FMG] no subject", "text/plain");
        msg.setSender(new InternetAddress("admin@fullmetalgalaxy.com", "FMG Admin"));
        msg.setFrom(new InternetAddress("admin@fullmetalgalaxy.com", "FMG Admin"));
        EbAccount fromAccount = null;

        // Parse the request
        FileItemIterator iter = upload.getItemIterator(p_request);
        while (iter.hasNext()) {
            FileItemStream item = iter.next();
            if (item.isFormField()) {
                if ("msg".equalsIgnoreCase(item.getFieldName())) {
                    msg.setContent(Streams.asString(item.openStream(), "UTF-8"), "text/plain");
                }
                if ("subject".equalsIgnoreCase(item.getFieldName())) {
                    msg.setSubject("[FMG] " + Streams.asString(item.openStream(), "UTF-8"), "text/plain");
                }
                if ("toid".equalsIgnoreCase(item.getFieldName())) {
                    EbAccount account = null;
                    try {
                        account = FmgDataStore.dao().get(EbAccount.class,
                                Long.parseLong(Streams.asString(item.openStream(), "UTF-8")));
                    } catch (NumberFormatException e) {
                    }
                    if (account != null) {
                        msg.addRecipient(Message.RecipientType.TO,
                                new InternetAddress(account.getEmail(), account.getPseudo()));
                    }
                }
                if ("fromid".equalsIgnoreCase(item.getFieldName())) {
                    try {
                        fromAccount = FmgDataStore.dao().get(EbAccount.class,
                                Long.parseLong(Streams.asString(item.openStream(), "UTF-8")));
                    } catch (NumberFormatException e) {
                    }
                    if (fromAccount != null) {
                        if (fromAccount.getAuthProvider() == AuthProvider.Google
                                && !fromAccount.isHideEmailToPlayer()) {
                            msg.setFrom(new InternetAddress(fromAccount.getEmail(), fromAccount.getPseudo()));
                        } else {
                            msg.setFrom(
                                    new InternetAddress(fromAccount.getFmgEmail(), fromAccount.getPseudo()));
                        }
                    }
                }
            }
        }

        // msg.addRecipients( Message.RecipientType.BCC, InternetAddress.parse(
        // "archive@fullmetalgalaxy.com" ) );
        Transport.send(msg);

    } catch (Exception e) {
        log.error(e);
        p_response.sendRedirect("/genericmsg.jsp?title=Error&text=" + e.getMessage());
        return;
    }

    p_response.sendRedirect("/genericmsg.jsp?title=Message envoye");
}

From source file:de.mpg.imeji.presentation.upload.UploadBean.java

public void upload() throws Exception {
    HttpServletRequest req = (HttpServletRequest) FacesContext.getCurrentInstance().getExternalContext()
            .getRequest();//from  w  w  w.  j  ava2 s  .  c om
    boolean isMultipart = ServletFileUpload.isMultipartContent(req);
    if (isMultipart) {
        ServletFileUpload upload = new ServletFileUpload();
        // Parse the request
        FileItemIterator iter = upload.getItemIterator(req);
        while (iter.hasNext()) {
            FileItemStream item = iter.next();
            String name = item.getFieldName();
            InputStream stream = item.openStream();
            if (!item.isFormField()) {
                title = item.getName();
                StringTokenizer st = new StringTokenizer(title, ".");
                while (st.hasMoreTokens()) {
                    format = st.nextToken();
                }
                mimetype = "image/" + format;
                // TODO remove static image description
                description = "";
                try {
                    UserController uc = new UserController(null);
                    User user = uc.retrieve(getUser().getEmail());
                    try {
                        DepositController controller = new DepositController();
                        Item escidocItem = controller.createEscidocItem(stream, title, mimetype, format);
                        controller.createImejiImage(collection, user, escidocItem.getOriginObjid(), title,
                                URI.create(EscidocHelper.getOriginalResolution(escidocItem)),
                                URI.create(EscidocHelper.getThumbnailUrl(escidocItem)),
                                URI.create(EscidocHelper.getWebResolutionUrl(escidocItem)));
                        // controller.createImejiImage(collection, user, "escidoc:123", title,
                        // URI.create("http://imeji.org/test"), URI.create("http://imeji.org/test"),
                        // URI.create("http://imeji.org/test"));
                        sNum += 1;
                        sFiles.add(title);
                    } catch (Exception e) {
                        fNum += 1;
                        fFiles.add(title);
                        logger.error("Error uploading image: ", e);
                        // throw new RuntimeException(e);
                    }
                } catch (Exception e) {
                    throw new RuntimeException(e);
                }
            }
        }
        logger.info("Upload finished");
    }
}

From source file:de.egore911.reader.servlets.OpmlImportServlet.java

@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
    User user = getUserOrRedirect(resp);
    if (user == null) {
        return;/* w  ww  .j  a v  a  2  s  .c o  m*/
    }

    boolean success = false;
    String reason = null;
    ServletFileUpload upload = new ServletFileUpload();
    CategoryDao categoryDao = new CategoryDao();
    FeedUserDao feedUserDao = new FeedUserDao();
    FeedDao feedDao = new FeedDao();
    try {
        FileItemIterator iter = upload.getItemIterator(req);
        // Parse the request
        while (iter.hasNext()) {
            FileItemStream item = iter.next();
            String name = item.getFieldName();
            if ("subscriptions".equals(name) && !item.isFormField()
                    && "text/xml".equals(item.getContentType())) {
                try (InputStream stream = item.openStream()) {
                    DocumentBuilderFactory documentBuilderFactory = DocumentBuilderFactory.newInstance();
                    DocumentBuilder documentBuilder = documentBuilderFactory.newDocumentBuilder();
                    Document document = documentBuilder.parse(stream);

                    document.getDocumentElement().normalize();

                    Element opml = document.getDocumentElement();
                    if (!"opml".equals(opml.getTagName())) {
                        throw new ServletException("Invalid XML");
                    }

                    NodeList nodes = opml.getChildNodes();
                    for (int i = 0; i < nodes.getLength(); i++) {
                        Node node = nodes.item(i);
                        if (node.getNodeType() == Node.ELEMENT_NODE) {
                            Element element = (Element) node;
                            if ("body".equals(element.getTagName())) {
                                if (countFeeds(element.getChildNodes()) < 20) {
                                    importRecursive(categoryDao, feedUserDao, feedDao, user, Category.ROOT,
                                            element.getChildNodes());
                                    success = true;
                                } else {
                                    reason = "to_many_feeds";
                                }
                            }
                        }
                    }

                } catch (ParserConfigurationException | SAXException e) {
                    throw new ServletException(e.getMessage(), e);
                }
            }
        }
    } catch (FileUploadException e) {
        throw new ServletException(e.getMessage(), e);
    }

    if (success) {
        resp.sendRedirect("/reader");
    } else {
        String redirectTo = "/import?msg=import_failed";
        if (reason != null) {
            redirectTo += "&reason=" + reason;
        }
        resp.sendRedirect(redirectTo);
    }
}

From source file:com.esri.gpt.control.filter.MultipartWrapper.java

/**
 * Construct with a current HTTP servlet request.
 * @param request the current HTTP servlet request
 * @throws FileUploadException if an exception occurs during file upload
 *//*from w ww  .  ja v  a  2  s. c  o m*/
public MultipartWrapper(HttpServletRequest request) throws FileUploadException {
    super(request);
    getLogger().finer("Handling multipart content.");

    // initialize parameters
    _fileParameters = new HashMap<String, FileItem>();
    _formParameters = new HashMap<String, String[]>();
    int nFileSizeMax = 100000000;
    int nSizeThreshold = 500000;
    String sTmpFolder = "";

    // make the file item factory
    DiskFileItemFactory factory = new DiskFileItemFactory();
    factory.setSizeThreshold(nSizeThreshold);
    if (sTmpFolder.length() > 0) {
        File fTmpFolder = new File(sTmpFolder);
        factory.setRepository(fTmpFolder);
    }

    // make the file upload object
    ServletFileUpload fileUpload = new ServletFileUpload();
    fileUpload.setFileItemFactory(factory);
    fileUpload.setFileSizeMax(nFileSizeMax);

    // parse the parameters associated with the request
    List items = fileUpload.parseRequest(request);
    String[] aValues;
    ArrayList<String> lValues;
    for (int i = 0; i < items.size(); i++) {
        FileItem item = (FileItem) items.get(i);
        getLogger().finer("FileItem=" + item);
        if (item.isFormField()) {
            String sName = item.getFieldName();
            String sValue = item.getString();
            if (_formParameters.containsKey(sName)) {
                aValues = _formParameters.get(sName);
                lValues = new ArrayList<String>(Arrays.asList(aValues));
                lValues.add(sValue);
                aValues = lValues.toArray(new String[0]);
            } else {
                aValues = new String[1];
                aValues[0] = sValue;
            }
            _formParameters.put(sName, aValues);
        } else {
            _fileParameters.put(item.getFieldName(), item);
            request.setAttribute(item.getFieldName(), item);
        }
    }
}

From source file:com.qualogy.qafe.web.upload.DatagridUploadServlet.java

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

    byte[] filecontent = null;
    ServletFileUpload upload = new ServletFileUpload();
    InputStream inputStream = null;
    ByteArrayOutputStream outputStream = null;
    boolean isFirstLineHeader = false;
    String delimiter = ",";

    writeUploadInfo(request);//from   www .j  av  a 2 s  . co  m
    log(request.getHeader("User-Agent"));

    response.setContentType("text/html");
    PrintWriter out = response.getWriter();

    try {
        FileItemIterator fileItemIterator = upload.getItemIterator(request);
        while (fileItemIterator.hasNext()) {
            FileItemStream item = fileItemIterator.next();
            inputStream = item.openStream();
            // Read the file into a byte array.
            outputStream = new ByteArrayOutputStream();
            byte[] buffer = new byte[8192];
            int len = 0;
            while (-1 != (len = inputStream.read(buffer))) {
                outputStream.write(buffer, 0, len);
            }
            if (filecontent == null) {
                filecontent = outputStream.toByteArray();
            }
            if (FORM_PARAMETER_DELIMITER.equals(item.getFieldName())) {
                delimiter = outputStream.toString();
            } else if (FORM_PARAMETER_ISFIRSTLINEHEADER.equals(item.getFieldName())) {
                if ("on".equals(outputStream.toString())) {
                    isFirstLineHeader = true;
                }
            }
        }
        inputStream.close();
        outputStream.close();
    } catch (FileUploadException e) {
        ExceptionHelper.printStackTrace(e);
    } catch (RuntimeException e) {
        out.print("Conversion failed. Please check the file. Message :" + e.getMessage());
    }

    DocumentParameter dp = new DocumentParameter();
    dp.setDelimiter(delimiter);
    dp.setFirstFieldHeader(isFirstLineHeader);
    dp.setData(filecontent);
    try {
        DocumentOutput dout = documentService.processExcelUpload(dp);
        String uploadUUID = DataStore.KEY_LOOKUP_DATA + dout.getUuid();
        ApplicationLocalStore.getInstance().store(uploadUUID, uploadUUID, dout.getData());
        out.print("UUID=" + uploadUUID);
    } catch (Exception e) {
        out.print("Conversion failed. Please check the file (" + e.getMessage() + ")");
    }
}