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(FileItemFactory fileItemFactory) 

Source Link

Document

Constructs an instance of this class which uses the supplied factory to create FileItem instances.

Usage

From source file:it.biblio.servlets.Inserimento_Ristampa.java

/**
 * metodo per gestire l'upload di file//from   w w w.  j ava  2 s .  c o m
 *
 * @param request
 * @param response
 * @param k
 * @return
 * @throws IOException
 */
private boolean upload(HttpServletRequest request) throws IOException, Exception {

    Map<String, Object> ristampe = new HashMap<String, Object>();
    int idopera = Integer.parseInt(request.getParameter("id"));

    if (ServletFileUpload.isMultipartContent(request)) {

        FileItemFactory fif = new DiskFileItemFactory();
        ServletFileUpload sfo = new ServletFileUpload(fif);
        List<FileItem> items = sfo.parseRequest(request);
        for (FileItem item : items) {
            String fname = item.getFieldName();
            if (item.isFormField() && fname.equals("ISBN") && !item.getString().isEmpty()) {
                ristampe.put("isbn", item.getString());
            } else if (item.isFormField() && fname.equals("numero_pagine") && !item.getString().isEmpty()) {
                ristampe.put("numpagine", Integer.parseInt(item.getString()));
            } else if (item.isFormField() && fname.equals("anno_pub") && !item.getString().isEmpty()) {
                ristampe.put("datapub", item.getString());
            } else if (item.isFormField() && fname.equals("editore") && !item.getString().isEmpty()) {
                ristampe.put("editore", item.getString());
            } else if (item.isFormField() && fname.equals("lingua") && !item.getString().isEmpty()) {
                ristampe.put("lingua", item.getString());
            } else if (item.isFormField() && fname.equals("indice") && !item.getString().isEmpty()) {
                ristampe.put("indice", item.getString());
                //se  stato inserito un pdf salvo il file e inserisco nella mappa i dati
            } else if (!item.isFormField() && fname.equals("PDF")) {
                String name = item.getName();
                long size = item.getSize();
                if (size > 0 && !name.isEmpty()) {
                    File target = new File(getServletContext().getRealPath("") + File.separatorChar + "PDF"
                            + File.separatorChar + name);
                    item.write(target);
                    ristampe.put("download", "PDF" + File.separatorChar + name);
                }
                //salvo l'immagine e inserisco i dati nella mappa
            } else if (!item.isFormField() && fname.equals("copertina")) {
                String name = item.getName();
                long size = item.getSize();
                if (size > 0 && !name.isEmpty()) {
                    File target = new File(getServletContext().getRealPath("") + File.separatorChar
                            + "Copertine" + File.separatorChar + name);
                    item.write(target);
                    ristampe.put("copertina", "Copertine" + File.separatorChar + name);
                }
            }
        }
        ristampe.put("pubblicazioni", idopera);
        return Database.insertRecord("ristampe", ristampe);

    }
    return false;
}

From source file:com.sketchy.server.ImageUploadServlet.java

protected void doPost(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    JSONServletResult jsonServletResult = new JSONServletResult(Status.SUCCESS);
    try {/*  ww w  .  j  av a2  s.c  o m*/

        boolean isMultipart = ServletFileUpload.isMultipartContent(request);
        if (isMultipart) {

            DiskFileItemFactory factory = new DiskFileItemFactory();
            factory.setRepository(FileUtils.getTempDirectory());
            factory.setSizeThreshold(MAX_SIZE);

            ServletFileUpload servletFileUpload = new ServletFileUpload(factory);
            List<FileItem> files = servletFileUpload.parseRequest(request);
            for (FileItem fileItem : files) {
                String uploadFileName = fileItem.getName();
                if (StringUtils.isNotBlank(uploadFileName)) {
                    // Don't allow \\ in the filename, assume it's a directory separator and convert to "/"
                    // and take the filename after the last "/"
                    // This will fix the issue of Jetty not reading and serving files
                    // with "\" (%5C) characters 
                    // This also fixes the issue of IE sometimes sending the whole path 
                    // (depending on the security settings)
                    uploadFileName = StringUtils.replaceChars(uploadFileName, "\\", "/");
                    if (StringUtils.contains(uploadFileName, "/")) {
                        uploadFileName = StringUtils.substringAfterLast(uploadFileName, "/");
                    }

                    File uploadFile = HttpServer.getUploadFile(uploadFileName);
                    // make sure filename is actually in the upload directory
                    // we don't want any funny games
                    if (!uploadFile.getParentFile().equals(HttpServer.IMAGE_UPLOAD_DIRECTORY)) {
                        throw new RuntimeException("Can not upload File. Invalid directory!");
                    }

                    // if saved ok, then need to add the data file
                    SourceImageAttributes sourceImageAttributes = new SourceImageAttributes();
                    sourceImageAttributes.setImageName(uploadFileName);

                    File pngFile = HttpServer.getUploadFile(sourceImageAttributes.getImageFilename());
                    if (pngFile.exists()) {
                        throw new Exception(
                                "Can not Upload file. File '" + uploadFileName + "' already exists!");
                    }
                    File dataFile = HttpServer.getUploadFile(sourceImageAttributes.getDataFilename());

                    // Convert the image to a .PNG file
                    BufferedImage image = ImageUtils.loadImage(fileItem.getInputStream());
                    ImageUtils.saveImage(pngFile, image);

                    sourceImageAttributes.setWidth(image.getWidth());
                    sourceImageAttributes.setHeight(image.getHeight());

                    FileUtils.writeStringToFile(dataFile, sourceImageAttributes.toJson());
                    jsonServletResult.put("imageName", uploadFileName);
                }
            }
        }
    } catch (Exception e) {
        jsonServletResult = new JSONServletResult(Status.ERROR, e.getMessage());
    }
    response.setContentType("text/html");
    response.setStatus(HttpServletResponse.SC_OK);
    response.getWriter().print(jsonServletResult.toJSONString());
}

From source file:hu.sztaki.lpds.submitter.service.jobstatus.JobStatusServlet.java

/** 
 * Processes requests for both HTTP <code>GET</code> and <code>POST</code> methods.
 * @param request servlet request/*w w  w.  j av  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
 */
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {

    //System.out.println("JobStatusServlet.processRequest called !!!!!!!!!!!!!!!");
    String uid = "";
    String jobid = "";
    int status = -1;
    //sysLog(jobid, "JobStatusServlet * * * JobStatusServlet called");
    response.setContentType("text/html;charset=UTF-8");
    PrintWriter out = response.getWriter();
    try {
        DiskFileItemFactory fileItemFactory = new DiskFileItemFactory();
        fileItemFactory.setSizeThreshold(30 * 1024 * 1024); //1 MB
        fileItemFactory.setRepository(new File(Base.getI().getPath()));//new File()

        ServletFileUpload uploadHandler = new ServletFileUpload(fileItemFactory);

        try {
            List items = uploadHandler.parseRequest(request);
            Iterator itr = items.iterator();
            while (itr.hasNext()) {
                FileItem item = (FileItem) itr.next();
                if (item.isFormField()) {
                    //                        out.println("Field Name = " + item.getFieldName() + ", Value = " + item.getString());
                    //                        System.out.println("JobStatusServlet: Field Name = " + item.getFieldName() + ", Value = " + item.getString());
                    if ("uid".equals("" + item.getFieldName())) {
                        uid = item.getString();
                    } else if ("jobid".equals("" + item.getFieldName())) {
                        jobid = item.getString();
                    } else if ("status".equals("" + item.getFieldName())) {
                        status = Integer.parseInt(item.getString());
                    }
                } else {
                    //                        System.out.println("JobStatusServlet: Field Name = " + item.getFieldName()
                    //                                + ", File Name = " + item.getName()
                    //                                + ", Content type = " + item.getContentType()
                    //                                + ", File Size = " + item.getSize());
                    //                        out.println("Field Name = " + item.getFieldName()
                    //                                + ", File Name = " + item.getName()
                    //                                + ", Content type = " + item.getContentType()
                    //                                + ", File Size = " + item.getSize());
                    // outfiles.add(item.getName());
                    if (status == 1 && GStatusHandler.getI().setStatus(uid, jobid, status)) {//if status == uploading(1) and userid->jobid
                        File destinationDir = new File(Base.getI().getPath() + jobid + "/outputs");
                        File file = new File(destinationDir, item.getName());
                        item.write(file);
                    } else {
                        System.out.println("ILLEGAL ACCESS or Deleted job!? uid:" + uid + " jobid:" + jobid);
                    }
                }

            }

        } catch (FileUploadException ex) {
            sysLog(jobid, "JobStatusServlet: Error encountered while parsing the request: " + ex
                    + " --> try getparameters");
            //ex.printStackTrace();
            uid = request.getParameter("uid");
            jobid = request.getParameter("jobid");
            try {
                if (request.getParameter("status") != null) {
                    status = Integer.parseInt(request.getParameter("status"));
                    if (status == 6) {
                        status = 66;
                    } else if (status == 7) {
                        status = 77;
                    } //running status = 55
                }
            } catch (Exception ee) {
                //ee.printStackTrace();
            }
        } catch (Exception ex) {
            sysLog(jobid, "JobStatusServlet:Error encountered while uploading file: " + ex);
            //ex.printStackTrace();
        }

        sysLog(jobid, " JobStatusServlet: status=" + status + " userid=" + uid);
        if (status != -1) {
            GStatusHandler.getI().setStatus(uid, jobid, status);
        }

        //RequestDispatcher comp = null;

        //comp = request.getRequestDispatcher("hiba.jsp");
        // comp.forward(request, response);
    } catch (Exception ee) {
        ee.printStackTrace();
    } finally {
        out.close();
    }

    //GStatusHandler.getI().getJob(jobID)

}

From source file:cServ.AltaDoc.java

/**
 * Processes requests for both HTTP <code>GET</code> and <code>POST</code>
 * methods.//from   w w w .j  a  v  a  2s . c om
 *
 * @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()) {
        System.out.println("hit altadoc");

        //begin database operation
        String nomArch = "";
        String nombre = "";
        String contra = "";
        int id = 0;
        System.out.println(request.getParameter("idprofe"));
        String displayString = "Contrasea incorrecta";
        String divColor = "danger";
        String rdrUrl = "<meta http-equiv=\"refresh\" content=\"2;url=pages/profesor/adminDocs.jsp\" >";

        //start file up
        FileItemFactory factory = new DiskFileItemFactory();

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

        // Parse the request
        List items = null;
        try {
            items = upload.parseRequest(request);
        } catch (Exception e) {
            e.printStackTrace();
        }

        for (Iterator it = items.iterator(); it.hasNext();) {
            DiskFileItem diskFileItem = (DiskFileItem) it.next();
            if (diskFileItem.isFormField()) {
                String fieldname = diskFileItem.getFieldName();
                String fieldvalue = diskFileItem.getString();
                System.out.println("fn: " + fieldname + " fv " + fieldvalue);
                if (fieldname.equals("nombre")) {
                    nombre = fieldvalue;
                } else if (fieldname.equals("contra")) {
                    contra = fieldvalue;
                } else if (fieldname.equals("idprofe")) {
                    id = Integer.parseInt(fieldvalue);
                }

            } else {

                //start getpath
                String relativeWebPath = "/../../web/pages/profesor/adminDocsPanels/docDump/";
                System.out.println("relative thing " + getServletContext().getRealPath(relativeWebPath));
                System.out.println(relativeWebPath);
                String absoluteDiskPath = getServletContext().getRealPath(relativeWebPath);
                System.out.println("complete path " + absoluteDiskPath + "\\" + nomArch);
                absoluteDiskPath += "\\" + nomArch;
                //end getpath

                byte[] fileBytes = diskFileItem.get();
                nomArch = diskFileItem.getName();
                File file = new File(absoluteDiskPath + diskFileItem.getName());
                FileOutputStream fileOutputStream = new FileOutputStream(file);
                fileOutputStream.write(fileBytes);
                fileOutputStream.flush();
            }
        }

        //end file up
        //start db insertion
        Validator valid = new Validator();
        valid.ValidatePDF(nomArch);
        if (valid.isValid() == true) {
            String adString = altaDoc(id, nomArch);
            if (adString.equals("operacion realizada")) {
                displayString = "Documento dado de alta";
                divColor = "success";
                rdrUrl = "<meta http-equiv=\"refresh\" content=\"2;url=pages/profesor/adminDocs.jsp\" >";
            }
        } else {
            displayString = "Archivo no vlido";
            divColor = "danger";
            rdrUrl = "<meta http-equiv=\"refresh\" content=\"2;url=pages/profesor/adminDocs.jsp\" >";
        }
        //end db insertion

        out.println("<!DOCTYPE html>");
        out.println("<html>");
        out.println("<head>");
        out.println("<link rel=\"stylesheet\" href=\"css/style.css\">");
        out.println("<title>Servlet AltaGrupo</title>");
        out.println("</head>");
        out.println("<body>");
        out.println("<div class=\"container\">\n" + "            <div class=\"row\">\n"
                + "                <br><br>\n" + "                <div class=\"panel panel-" + divColor
                + "\">\n" + "                    <div class=\"panel-heading\">\n"
                + "                        <h3 class=\"panel-title\">Espera</h3>\n"
                + "                    </div>\n" + "                    <div class=\"panel-body\">\n"
                + "                        " + displayString + " \n" + "                    </div>\n"
                + "                </div>\n" + "            </div>\n" + "        </div>");
        out.println(rdrUrl);
        out.println("</body>");
        out.println("</html>");
        //end database operation
    } catch (Exception ex) {
        ex.printStackTrace();
    }
}

From source file:com.food.adminservlet.FoodServlet.java

@Override

protected void doPost(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    int foodid = 0;
    String foodName = "";
    String fooddesc = "";
    Double foodprice = 0.0;//from  w  ww. ja  va 2 s  .c  om
    String foodCategory = "";
    PrintWriter out = response.getWriter();
    isMultipart = ServletFileUpload.isMultipartContent(request);
    FoodBean bkfood = new FoodBean();
    FoodBL foodbl = new FoodBL();
    try {

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

        DiskFileItemFactory factory = new DiskFileItemFactory();
        // maximum size that will be stored in memory
        factory.setSizeThreshold(maxMemSize);
        // Location to save data that is larger than maxMemSize.
        factory.setRepository(new File("c:\\temp"));

        // Create a new file upload handler
        ServletFileUpload upload = new ServletFileUpload(factory);
        // maximum file size to be uploaded.
        upload.setSizeMax(maxFileSize);

        // Parse the request to get file items.
        List fileItems = upload.parseRequest(request);

        // Process the uploaded file items
        Iterator i = fileItems.iterator();

        out.println("<html>");
        out.println("<head>");
        out.println("<title>Servlet upload</title>");
        out.println("</head>");
        out.println("<body>");
        while (i.hasNext()) {

            FileItem fi = (FileItem) i.next();
            if (fi.isFormField()) {
                if (fi.getFieldName().equals("foodid")) {
                    foodid = Integer.parseInt(fi.getString());
                }
                if (fi.getFieldName().equals("foodname")) {
                    foodName = fi.getString();
                }
                if (fi.getFieldName().equals("fooddesc")) {
                    fooddesc = fi.getString();
                }
                if (fi.getFieldName().equals("foodprice")) {
                    foodprice = Double.parseDouble(fi.getString());
                }
                if (fi.getFieldName().equals("foodcate")) {
                    foodCategory = fi.getString();
                }

                out.println("<br>");
            }
            if (!fi.isFormField()) {
                // Get the uploaded file parameters
                String fieldName = fi.getFieldName();
                fileName = fi.getName();
                String contentType = fi.getContentType();
                boolean isInMemory = fi.isInMemory();
                long sizeInBytes = fi.getSize();
                // Write the file
                if (fileName.lastIndexOf("\\") >= 0) {
                    file = new File(filePath + fileName.substring(fileName.lastIndexOf("\\")));
                } else {
                    file = new File(filePath + fileName.substring(fileName.lastIndexOf("\\") + 1));
                }
                fi.write(file);
                out.println("Uploaded Filename: " + fileName + "<br>");
            }
        }

        out.println(fileName);

        bkfood.setFoodId(foodid);
        bkfood.setFoodName(foodName);
        bkfood.setFoodPrice(foodprice);
        bkfood.setFoodCateg(foodCategory);
        bkfood.setFoodDesc(fooddesc);
        bkfood.setFoodRetreiveImage(fileName);
        // bkfood.setFoodimage(request.getPart("foodimage"));
        bkfood.setFoodstatus("Y");

        int chk = foodbl.addFoodItems(bkfood);
        out.println(chk);

        if (chk == 1) {
            response.sendRedirect("food.jsp");
        }

    } catch (Exception ex) {
        out.println(ex);
    }
}

From source file:com.kunal.NewServlet2.java

/**
 * Processes requests for both HTTP <code>GET</code> and <code>POST</code>
 * methods.//from www.j a 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 {
    if (ServletFileUpload.isMultipartContent(request)) {

        try {
            HttpSession session = request.getSession();
            String V_Str_Id = (String) session.getAttribute("VSID");
            String containerName = V_Str_Id;
            //String fileName = "Ad2";
            String userId = "7f7a82c6a2464a45b0ea5b7c65c90f38";
            String password = "lM_EC#0a7U})SE-.";
            String auth_url = "https://lon-identity.open.softlayer.com" + "/v3";
            String domain = "1090141";
            String project = "object_storage_e32c650b_e512_4e44_aeb8_c49fdf1de69f";
            Identifier domainIdent = Identifier.byName(domain);
            Identifier projectIdent = Identifier.byName(project);

            OSClient os = OSFactory.builderV3().endpoint(auth_url).credentials(userId, password)
                    .scopeToProject(projectIdent, domainIdent).authenticate();

            SwiftAccount account = os.objectStorage().account().get();
            ObjectStorageService objectStorage = os.objectStorage();
            List<FileItem> multiparts = new ServletFileUpload(new DiskFileItemFactory()).parseRequest(request);

            for (FileItem item : multiparts) {
                if (!item.isFormField()) {
                    String name = new File(item.getName()).getName();
                    System.out.println(name);
                    // item.write( new File(UPLOAD_DIRECTORY + File.separator + name));
                    String etag = os.objectStorage().objects().put(containerName, name,
                            Payloads.create(item.getInputStream()));
                    System.out.println(etag);
                }
            }

            //File uploaded successfully
            request.setAttribute("message", "File Uploaded Successfully");
        } catch (Exception ex) {
            request.setAttribute("message", "File Upload Failed due to " + ex);
        }

    } else {
        request.setAttribute("message", "Sorry this Servlet only handles file upload request");
    }

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

}

From source file:com.hillert.upload.web.ajax.AjaxFileUploadMultipartResolver.java

public MultipartHttpServletRequest resolveMultipart(HttpServletRequest request) throws MultipartException {
    String encoding = determineEncoding(request);
    FileUpload fileUpload1 = prepareFileUpload(encoding); //renamed fileUpload to fileUpload1

    // Beginn of added code
    UploadListener listener = new UploadListener(request, 30);
    FileItemFactory factory = new MonitoredDiskFileItemFactory(listener);
    ServletFileUpload fileUpload = new ServletFileUpload(factory);
    fileUpload.setSizeMax(fileUpload1.getSizeMax());
    fileUpload.setHeaderEncoding(fileUpload1.getHeaderEncoding());
    //end of added code

    try {/*from  w  w  w .  ja v  a 2 s  . co  m*/
        List fileItems = ((ServletFileUpload) fileUpload).parseRequest(request);
        MultipartParsingResult parsingResult = parseFileItems(fileItems, encoding);
        return new DefaultMultipartHttpServletRequest(request, parsingResult.getMultipartFiles(),
                parsingResult.getMultipartParameters());
    } catch (FileUploadBase.SizeLimitExceededException ex) {
        throw new MaxUploadSizeExceededException(fileUpload.getSizeMax(), ex);
    } catch (FileUploadException ex) {
        throw new MultipartException("Could not parse multipart servlet request", ex);
    }
}

From source file:edu.lafayette.metadb.web.projectman.CreateProject.java

/**
 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
 *      response)/* w w  w .jav a2 s .  c om*/
 */
@SuppressWarnings("unchecked")
protected void doPost(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    // TODO Auto-generated method stub
    PrintWriter out = response.getWriter();
    JSONObject output = new JSONObject();
    String delimiter = "";
    String projname = "";
    String projnotes = "";
    String template = "";
    boolean useTemplate = false;
    boolean disableQualifier = false;
    try {
        if (ServletFileUpload.isMultipartContent(request)) {
            ServletFileUpload servletFileUpload = new ServletFileUpload(new DiskFileItemFactory());
            List fileItemsList = servletFileUpload.parseRequest(request);
            DiskFileItemFactory diskFileItemFactory = new DiskFileItemFactory();
            diskFileItemFactory.setSizeThreshold(40960); /* the unit is bytes */

            Iterator it = fileItemsList.iterator();
            InputStream input = null;
            while (it.hasNext()) {
                FileItem fileItem = (FileItem) it.next();
                //MetaDbHelper.note("Field name: "+fileItem.getFieldName());
                //MetaDbHelper.note(fileItem.getString());
                if (fileItem.isFormField()) {
                    /*
                     * The file item contains a simple name-value pair of a
                     * form field
                     */
                    if (fileItem.getFieldName().equals("delimiter") && delimiter.equals(""))
                        delimiter = fileItem.getString();
                    else if (fileItem.getFieldName().equals("projname") && projname.equals(""))
                        projname = fileItem.getString().replace(" ", "_");
                    else if (fileItem.getFieldName().equals("projnotes") && projnotes.equals(""))
                        projnotes = fileItem.getString();
                    else if (fileItem.getFieldName().equals("project-template-checkbox"))
                        useTemplate = true;
                    else if (fileItem.getFieldName().equals("project-template"))
                        template = fileItem.getString().replace(" ", "_");
                    //else if (fileItem.getFieldName().equals("disable-qualifier-checkbox"))
                    //disableQualifier = true;
                } else
                    input = fileItem.getInputStream();

            }
            String userName = Global.METADB_USER;

            HttpSession session = request.getSession(false);
            if (session != null) {
                userName = (String) session.getAttribute(Global.SESSION_USERNAME);
            }

            //MetaDbHelper.note("Delimiter: "+delimiter+", projname: "+projname+", projnotes: "+projnotes+", use template or not? "+useTemplate+" template: "+template);
            if (useTemplate) {
                ProjectsDAO.createProject(template, projname, projnotes, "");
                output.put("projname", projname);
                output.put("success", true);
                output.put("message", "Project created successfully based on: " + template);
                SysLogDAO.log(userName, Global.SYSLOG_PROJECT,
                        "User created project " + projname + " with template from " + template);
            } else {
                if (ProjectsDAO.createProject(projname, projnotes)) {
                    output.put("projname", projname);
                    String delimiterType = "csv";
                    if (delimiter.equals("tab")) {
                        delimiterType = "tsv";
                        disableQualifier = true; // Disable text qualifiers for TSV files.
                    }
                    //MetaDbHelper.note("Delim: "+delimiterType+", projname: "+projname+", input: "+input);
                    if (input != null) {
                        Result res = DataImporter.importFile(delimiterType, projname, input, disableQualifier);
                        output.put("success", res.isSuccess());
                        if (res.isSuccess()) {
                            output.put("message", "Data import successfully");
                            SysLogDAO.log(userName, Global.SYSLOG_PROJECT,
                                    "User created project " + projname + " with file import");
                        } else {

                            output.put("message", "The following fields have been changed");
                            SysLogDAO.log(userName, Global.SYSLOG_PROJECT,
                                    "User created project " + projname + " with file import");
                            String fields = "";
                            ArrayList<String> data = (ArrayList<String>) res.getData();
                            for (String field : data)
                                fields += field + ',';
                            output.put("fields", fields);
                        }
                    } else {
                        output.put("success", true);
                        output.put("message",
                                "Project created successfully with default fields. No data imported");
                        SysLogDAO.log(userName, Global.SYSLOG_PROJECT, "User created project " + projname);
                    }
                } else {
                    output.put("success", false);
                    output.put("message", "Cannot create project");
                    SysLogDAO.log(userName, Global.SYSLOG_PROJECT, "User failed to create project " + projname);
                }
            }
        } else {
            output.put("success", false);
            output.put("message", "Form is not multi-part");
        }
    } catch (NullPointerException e) {
        try {
            output.put("success", true);
            output.put("message", "Project created successfully");
        } catch (JSONException e1) {
            MetaDbHelper.logEvent(e1);
        }

    } catch (Exception e) {
        MetaDbHelper.logEvent(e);
        try {
            output.put("success", false);
            output.put("message", "Project was not created");
        } catch (JSONException e1) {
            MetaDbHelper.logEvent(e1);
        }
    }
    out.print(output);
    out.flush();

}

From source file:dk.netarkivet.harvester.webinterface.TrapCreateOrUpdateAction.java

@Override
protected void doAction(PageContext context, I18n i18n) {
    String name = null;/*from  w w  w.ja va 2s  . c  om*/
    boolean isActive = true;
    String description = null;
    InputStream is = null;
    String id = null;
    String fileName = null;
    HttpServletRequest request = (HttpServletRequest) context.getRequest();
    FileItemFactory factory = new DiskFileItemFactory();
    ServletFileUpload upload = new ServletFileUpload(factory);
    List<FileItem> items = null;
    try {
        items = upload.parseRequest(request);
    } catch (FileUploadException e) {
        HTMLUtils.forwardWithErrorMessage(context, i18n, e, "errormsg;crawlertrap.upload.error");
        throw new ForwardedToErrorPage("Error on multipart post", e);
    }
    for (FileItem item : items) {
        if (item.isFormField()) {
            if (item.getFieldName().equals(Constants.TRAP_NAME)) {
                name = item.getString();
            } else if (item.getFieldName().equals(Constants.TRAP_IS_ACTIVE)) {
                isActive = Boolean.parseBoolean(item.getString());
            } else if (item.getFieldName().equals(Constants.TRAP_DESCRIPTION)) {
                description = item.getString();
            } else if (item.getFieldName().equals(Constants.TRAP_ID)) {
                id = item.getString();
            }
        } else {
            try {
                fileName = item.getName();
                is = item.getInputStream();
            } catch (IOException e) {
                HTMLUtils.forwardWithErrorMessage(context, i18n, e, "errormsg;crawlertrap.upload.error");
                throw new ForwardedToErrorPage("Error on multipart post", e);
            }
        }
    }
    GlobalCrawlerTrapListDAO dao = GlobalCrawlerTrapListDBDAO.getInstance();
    if (id != null) { // update existing trap list
        int trapId = Integer.parseInt(id);
        GlobalCrawlerTrapList trap = dao.read(trapId);
        trap.setActive(isActive);
        trap.setDescription(description);
        trap.setName(name);
        if (fileName != null && !fileName.isEmpty()) {
            log.debug("Reading global crawler trap list from '" + fileName + "'");
            try {
                trap.setTrapsFromInputStream(is, name);
            } catch (ArgumentNotValid argumentNotValid) {
                HTMLUtils.forwardWithErrorMessage(context, i18n, "errormsg;crawlertrap.regexp.error");
                throw new ForwardedToErrorPage(argumentNotValid.getMessage());
            }
        }
        dao.update(trap);
    } else { // create new trap list
        log.debug("Reading global crawler trap list from '" + fileName + "'");
        GlobalCrawlerTrapList trap = new GlobalCrawlerTrapList(is, name, description, isActive);
        if (!dao.exists(name)) {
            dao.create(trap);
        } else {
            // crawlertrap named like this already exists.
            HTMLUtils.forwardWithErrorMessage(context, i18n, "errormsg;crawlertrap.0.exists.error", name);
            throw new ForwardedToErrorPage("Crawlertrap with name '" + name + "' exists already");
        }
    }
}

From source file:calliope.handler.put.AesePutHandler.java

private void parseRequest(HttpServletRequest request) throws AeseException {
    try {/*  w  w  w. ja v a 2s . c  om*/
        FileItemFactory factory = new DiskFileItemFactory();
        // Create a new file upload handler
        ServletFileUpload upload = new ServletFileUpload(factory);
        // Parse the request
        List items = upload.parseRequest(request);
        for (int i = 0; i < items.size(); i++) {
            FileItem item = (FileItem) items.get(i);
            if (item.isFormField()) {
                String fieldName = item.getFieldName();
                if (fieldName != null) {
                    String contents = item.getString();
                    if (fieldName.equals(Params.STRIPPER))
                        stripperName = contents;
                    else if (fieldName.equals(Params.ENCODING))
                        encoding = contents;
                    else if (fieldName.equals(Params.STYLE))
                        style = contents;
                    else if (fieldName.equals(Params.TITLE))
                        title = contents;
                    else if (fieldName.equals(Params.VERSION1))
                        version1 = contents;
                    else if (fieldName.equals(Params.AUTHOR))
                        author = contents;
                    else if (fieldName.equals(Params.DESCRIPTION))
                        description = contents;
                }
            } else if (item.getName().length() > 0) {
                byte[] rawData = item.get();
                guessEncoding(rawData);
                if (encoding == null)
                    encoding = guessEncoding(rawData);
                fileContent = new String(rawData, encoding);
            }
        }
    } catch (Exception e) {
        throw new AeseException(e);
    }
}