Example usage for org.apache.commons.fileupload.disk DiskFileItemFactory setRepository

List of usage examples for org.apache.commons.fileupload.disk DiskFileItemFactory setRepository

Introduction

In this page you can find the example usage for org.apache.commons.fileupload.disk DiskFileItemFactory setRepository.

Prototype

public void setRepository(File repository) 

Source Link

Document

Sets the directory used to temporarily store files that are larger than the configured size threshold.

Usage

From source file:it.infn.ct.ParallelSemanticSearch_portlet.java

public void getInputForm(ActionRequest request, App_Input appInput) {
    if (PortletFileUpload.isMultipartContent(request)) {
        try {//from  w ww  . j av  a 2s  .c o  m
            FileItemFactory factory = new DiskFileItemFactory();
            PortletFileUpload upload = new PortletFileUpload(factory);
            List items = upload.parseRequest(request);
            File repositoryPath = new File("/tmp");
            DiskFileItemFactory diskFileItemFactory = new DiskFileItemFactory();
            diskFileItemFactory.setRepository(repositoryPath);
            Iterator iter = items.iterator();
            String logstring = "";
            while (iter.hasNext()) {
                FileItem item = (FileItem) iter.next();
                String fieldName = item.getFieldName();
                String fileName = item.getName();
                String contentType = item.getContentType();
                boolean isInMemory = item.isInMemory();
                long sizeInBytes = item.getSize();
                // Prepare a log string with field list
                logstring += LS + "field name: '" + fieldName + "' - '" + item.getString() + "'";
                switch (inputControlsIds.valueOf(fieldName)) {

                case JobIdentifier:
                    appInput.jobIdentifier = item.getString();
                    break;
                default:
                    _log.warn("Unhandled input field: '" + fieldName + "' - '" + item.getString() + "'");
                } // switch fieldName                                                   
            } // while iter.hasNext()   
            _log.info(LS + "Reporting" + LS + "---------" + LS + logstring + LS);
        } // try
        catch (Exception e) {
            _log.info("Caught exception while processing files to upload: '" + e.toString() + "'");
        }
    } // The input form do not use the "multipart/form-data" 
    else {
        // Retrieve from the input form the given application values
        appInput.search_word = (String) request.getParameter("search_word");
        appInput.jobIdentifier = (String) request.getParameter("JobIdentifier");
        appInput.nameSubject = (String) request.getParameter("nameSubject");

        appInput.idResouce = (String) request.getParameter("idResource");
        appInput.selected_language = (String) request.getParameter("selLanguage");
        appInput.numberPage = (String) request.getParameter("numberOfPage");
        appInput.numberPageOpenAgris = (String) request.getParameter("numberOfPageOpenAgris");
        appInput.numRecordsForPage = (String) request.getParameter("numberOfRecords");
        appInput.moreResourceCHAIN = (String) request.getParameter("moreResourceCHAIN");
        appInput.moreResourceOpenAgris = (String) request.getParameter("moreResourceOpenAgris");
        appInput.idResourceOpenAgris = (String) request.getParameter("idResourceOpenAgris");
        appInput.moreInfoOpenAgris = (String) request.getParameter("moreInfoOpenAgris");
        appInput.moreInfo = (String) request.getParameter("moreInfo");
        appInput.numberPageCulturaItalia = (String) request.getParameter("numberOfPageCulturaItalia");
        appInput.moreResourceCulturaItalia = (String) request.getParameter("moreResourceCulturaItalia");
        appInput.moreInfoCulturaItalia = (String) request.getParameter("moreInfoCulturaItalia");
        appInput.numResource = (String) request.getParameter("numResource");
        appInput.numResourceFromDetails = (String) request.getParameter("numResourceFromDetails");
        appInput.numResourceOpenAgris = (String) request.getParameter("numResourceOpenAgris");
        appInput.numResourceOpenAgrisFromDetails = (String) request
                .getParameter("numResourceOpenAgrisFromDetails");
        appInput.numResourceCulturaItalia = (String) request.getParameter("numResourceCulturaItalia");
        appInput.numResourceCulturaItaliaFromDetails = (String) request
                .getParameter("numResourceCulturaItaliaFromDetails");
        appInput.idResourceCulturaItalia = (String) request.getParameter("idResourceCulturaItalia");

        appInput.numberPageIsidore = (String) request.getParameter("numberOfPageIsidore");
        appInput.moreResourceIsidore = (String) request.getParameter("moreResourceIsidore");
        appInput.idResourceIsidore = (String) request.getParameter("idResourceIsidore");
        appInput.numResourceIsidore = (String) request.getParameter("numResourceIsidore");
        appInput.numResourceIsidoreFromDetails = (String) request.getParameter("numResourceIsidoreFromDetails");
        appInput.numberPageIsidore = (String) request.getParameter("numberOfPageIsidore");
        appInput.moreInfoIsidore = (String) request.getParameter("moreInfoIsidore");

        appInput.idResourceEuropeana = (String) request.getParameter("idResourceEuropeana");
        appInput.moreResourceEuropeana = (String) request.getParameter("moreResourceEuropeana");
        appInput.numberPageEuropeana = (String) request.getParameter("numberOfPageEuropeana");
        appInput.numResourceEuropeana = (String) request.getParameter("numResourceEuropeana");
        appInput.numResourceEuropeanaFromDetails = (String) request
                .getParameter("numResourceEuropeanaFromDetails");
        appInput.numberPageEuropeana = (String) request.getParameter("numberOfPageEuropeana");
        appInput.moreInfoEuropeana = (String) request.getParameter("moreInfoEuropeana");

        appInput.idResourcePubmed = (String) request.getParameter("idResourcePubmed");
        appInput.moreResourcePubmed = (String) request.getParameter("moreResourcePubmed");
        appInput.numberPagePubmed = (String) request.getParameter("numberOfPagePubmed");
        appInput.numResourcePubmed = (String) request.getParameter("numResourcePubmed");
        appInput.numResourcePubmedFromDetails = (String) request.getParameter("numResourcePubmedFromDetails");
        appInput.moreInfoPubmed = (String) request.getParameter("moreInfoPubmed");

        appInput.idResourceEngage = (String) request.getParameter("idResourceEngage");
        appInput.moreResourceEngage = (String) request.getParameter("moreResourceEngage");
        appInput.numberPageEngage = (String) request.getParameter("numberOfPageEngage");
        appInput.numResourceEngage = (String) request.getParameter("numResourceEngage");
        appInput.numResourceEngageFromDetails = (String) request.getParameter("numResourceEngageFromDetails");
        appInput.moreInfoEngage = (String) request.getParameter("moreInfoEngage");
        appInput.title_GS = (String) request.getParameter("title_GS");

    } // ! isMultipartContent

    // Show into the log the taken inputs
    _log.info(LS + "Taken input parameters:" + LS + "-----------------------" + LS + "Search Word: '"
            + appInput.search_word + "'" + LS + "jobIdentifier: '" + appInput.jobIdentifier + "'" + LS
            + "subject: '" + appInput.nameSubject + "'" + LS + "idResource: '" + appInput.idResouce + "'" + LS
            + "language selected: '" + appInput.selected_language + "'" + LS + "number page selected: '"
            + appInput.numberPage + "'" + LS + "number record for page: '" + appInput.numRecordsForPage + "'"
            + LS + "number page selected OpenAgris: '" + appInput.numberPageOpenAgris + "'" + LS
            + "moreResourceCHAIN: '" + appInput.moreResourceCHAIN + "'" + LS + "moreInfo: '" + appInput.moreInfo
            + "'" + LS + "moreResourceOpenAgris: '" + appInput.moreResourceOpenAgris + "'" + LS
            + "idResourceOpenAgris: '" + appInput.idResourceOpenAgris + "'" + LS + "moreInfoOpenAgris: '"
            + appInput.moreInfoOpenAgris + "'" + LS + "number page selected CulturaItalia: '"
            + appInput.numberPageCulturaItalia + "'" + LS + "moreResourceCulturaItalia: '"
            + appInput.moreResourceCulturaItalia + "'" + LS + "moreInfoCulturaItalia: '"
            + appInput.moreInfoCulturaItalia + "'" + LS + "NumResource: '" + appInput.numResource + "'" + LS
            + "NumResourceFromDetails: '" + appInput.numResourceFromDetails + "'" + LS
            + "NumResourceOpenAgris: '" + appInput.numResourceOpenAgris + "'" + LS
            + "NumResourceOpenAgrisFromDetails: '" + appInput.numResourceOpenAgrisFromDetails + "'" + LS
            + "NumResourceCulturaItalia: '" + appInput.numResourceCulturaItalia + "'" + LS
            + "NumResourceCulturaItaliaFromDetails: '" + appInput.numResourceCulturaItaliaFromDetails + "'" + LS
            + "idResourceCulturaItalia: '" + appInput.idResourceCulturaItalia + "'" + LS
            + "moreResourceEuropeana: '" + appInput.moreResourceEuropeana + "'" + LS);
}

From source file:it.infn.ct.nuclemd.Nuclemd.java

public String[] uploadNuclemdSettings(ActionRequest actionRequest, ActionResponse actionResponse,
        String username) {//from   w  w w.j  av a  2s  . c  o m
    String[] NUCLEMD_Parameters = new String[9];
    boolean status;

    // Check that we have a file upload request
    boolean isMultipart = PortletFileUpload.isMultipartContent(actionRequest);

    if (isMultipart) {
        // Create a factory for disk-based file items.
        DiskFileItemFactory factory = new DiskFileItemFactory();

        // Set factory constrains
        File NUCLEMD_Repository = new File("/tmp");
        if (!NUCLEMD_Repository.exists())
            status = NUCLEMD_Repository.mkdirs();
        factory.setRepository(NUCLEMD_Repository);

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

        try {
            // Parse the request
            List items = upload.parseRequest(actionRequest);
            // Processing items
            Iterator iter = items.iterator();

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

                DateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHmmss");
                String timeStamp = dateFormat.format(Calendar.getInstance().getTime());

                // Processing a regular form field
                if (item.isFormField()) {
                    if (fieldName.equals("nuclemd_release"))
                        NUCLEMD_Parameters[8] = item.getString();

                    if (fieldName.equals("nuclemd_desc"))
                        if (item.getString().equals("Please, insert here a description"))
                            NUCLEMD_Parameters[0] = "NUCLEMD Simulation Started";
                        else
                            NUCLEMD_Parameters[0] = item.getString();

                    if (fieldName.equals("nuclemd_CE"))
                        NUCLEMD_Parameters[1] = item.getString();

                } else {
                    // Processing a file upload
                    if (fieldName.equals("nuclemd_fileinp")) {
                        log.info("\n- Uploading the input file: " + "\n[ " + item.getName() + " ]" + "\n[ "
                                + item.getContentType() + " ]" + "\n[ " + item.getSize() + "KBytes ]");

                        // Writing the file to disk
                        String uploadNuclemdFile = NUCLEMD_Repository + "/" + timeStamp + "_" + username + "_"
                                + item.getName();

                        log.info("\n- Writing the file: [ " + uploadNuclemdFile.toString() + " ] to disk");

                        item.write(new File(uploadNuclemdFile));

                        // Writing the file to disk
                        String uploadNuclemdFile_stripped = NUCLEMD_Repository + "/" + timeStamp + "_"
                                + username + "_" + item.getName() + "_stripped";

                        NUCLEMD_Parameters[2] = RemoveCarriageReturn(uploadNuclemdFile,
                                uploadNuclemdFile_stripped);
                    }

                    if (fieldName.equals("nuclemd_fileconf_1")) {
                        log.info("\n- Uploading the input file: " + "\n[ " + item.getName() + " ]" + "\n[ "
                                + item.getContentType() + " ]" + "\n[ " + item.getSize() + "KBytes ]");

                        // Writing the file to disk
                        String uploadNuclemdFile = NUCLEMD_Repository + "/" + timeStamp + "_" + username + "_"
                                + item.getName();

                        log.info("\n- Writing the file: [ " + uploadNuclemdFile.toString() + " ] to disk");

                        item.write(new File(uploadNuclemdFile));

                        // Writing the file to disk
                        String uploadNuclemdFile_stripped = NUCLEMD_Repository + "/" + timeStamp + "_"
                                + username + "_" + item.getName() + "_stripped";

                        NUCLEMD_Parameters[3] = RemoveCarriageReturn(uploadNuclemdFile,
                                uploadNuclemdFile_stripped);
                    }

                    if (fieldName.equals("nuclemd_fileconf_2")) {
                        log.info("\n- Uploading the input file: " + "\n[ " + item.getName() + " ]" + "\n[ "
                                + item.getContentType() + " ]" + "\n[ " + item.getSize() + "KBytes ]");

                        // Writing the file to disk
                        String uploadNuclemdFile = NUCLEMD_Repository + "/" + timeStamp + "_" + username + "_"
                                + item.getName();

                        log.info("\n- Writing the file: [ " + uploadNuclemdFile.toString() + " ] to disk");

                        item.write(new File(uploadNuclemdFile));

                        // Writing the file to disk
                        String uploadNuclemdFile_stripped = NUCLEMD_Repository + "/" + timeStamp + "_"
                                + username + "_" + item.getName() + "_stripped";

                        NUCLEMD_Parameters[4] = RemoveCarriageReturn(uploadNuclemdFile,
                                uploadNuclemdFile_stripped);
                    }
                }

                if (fieldName.equals("EnableNotification"))
                    NUCLEMD_Parameters[5] = item.getString();

                if (fieldName.equals("nuclemd_maxwallclocktime"))
                    NUCLEMD_Parameters[6] = item.getString();

                if (fieldName.equals("EnableDemo"))
                    NUCLEMD_Parameters[7] = item.getString();

            } // end while
        } catch (FileUploadException ex) {
            Logger.getLogger(Nuclemd.class.getName()).log(Level.SEVERE, null, ex);
        } catch (Exception ex) {
            Logger.getLogger(Nuclemd.class.getName()).log(Level.SEVERE, null, ex);
        }
    }

    return NUCLEMD_Parameters;
}

From source file:it.infn.ct.wrf.Wrf.java

public String[] uploadSettings(ActionRequest actionRequest, ActionResponse actionResponse, String username) {
    String[] _Parameters = new String[7];
    boolean status;

    // Check that we have a file upload request
    boolean isMultipart = PortletFileUpload.isMultipartContent(actionRequest);

    if (isMultipart) {
        // Create a factory for disk-based file items.
        DiskFileItemFactory factory = new DiskFileItemFactory();

        // Set factory constrains
        File _Repository = new File("/tmp");
        if (!_Repository.exists())
            status = _Repository.mkdirs();
        factory.setRepository(_Repository);

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

        try {/*from  www  .j a  va 2s  . c  o  m*/
            // Parse the request
            List items = upload.parseRequest(actionRequest);

            // Processing items
            Iterator iter = items.iterator();

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

                String fieldName = item.getFieldName();

                DateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHmmss");
                String timeStamp = dateFormat.format(Calendar.getInstance().getTime());

                // Processing a regular form field
                if (item.isFormField()) {
                    if (fieldName.equals("wrf_textarea_OCTAVE")) {
                        _Parameters[0] = _Repository + "/" + timeStamp + "_" + username + ".m";

                        // Store the textarea in a ASCII file
                        storeString(_Parameters[0], item.getString());
                    }

                    if (fieldName.equals("wrf_textarea_R")) {
                        _Parameters[0] = _Repository + "/" + timeStamp + "_" + username + ".r";

                        // Store the textarea in a ASCII file
                        storeString(_Parameters[0], item.getString());
                    }

                    if (fieldName.equals("wrftype"))
                        _Parameters[1] = item.getString();

                    if (fieldName.equals("wrf_CR"))
                        _Parameters[2] = item.getString();

                    if (fieldName.equals("wrfvmtemplate"))
                        _Parameters[5] = item.getString();

                    if (fieldName.equals("wrf_vmname"))
                        _Parameters[6] = item.getString();

                } else {
                    // Processing a file upload
                    if (fieldName.equals("wrf_file_OCTAVE") || fieldName.equals("wrf_file_R")) {
                        log.info("\n- Uploading the following user's file: " + "\n[ " + item.getName() + " ]"
                                + "\n[ " + item.getContentType() + " ]" + "\n[ " + item.getSize() + "KBytes ]");

                        // Writing the file to disk
                        String uploadFile = _Repository + "/" + timeStamp + "_" + username + "_"
                                + item.getName();

                        log.info("\n- Writing the user's file: [ " + uploadFile.toString() + " ] to disk");

                        item.write(new File(uploadFile));

                        _Parameters[0] = uploadFile;
                    }
                }

                if (fieldName.equals("EnableNotification"))
                    _Parameters[3] = item.getString();

                if (fieldName.equals("wrf_desc"))
                    if (item.getString().equals("Please, insert here a description for your run"))
                        _Parameters[4] = "Cloud Simulation Started";
                    else
                        _Parameters[4] = item.getString();

            } // end while
        } catch (FileUploadException ex) {
            Logger.getLogger(Wrf.class.getName()).log(Level.SEVERE, null, ex);
        } catch (Exception ex) {
            Logger.getLogger(Wrf.class.getName()).log(Level.SEVERE, null, ex);
        }
    }

    return _Parameters;
}

From source file:com.portfolio.data.provider.MysqlDataProvider.java

@Override
public Object postPortfolioZip(MimeType mimeType, MimeType mimeType2, HttpServletRequest httpServletRequest,
        int userId, int groupId, String modelId, int substid) throws IOException {
    if (!credential.isAdmin(userId) && !credential.isCreator(userId))
        throw new RestWebApplicationException(Status.FORBIDDEN, "No admin right");

    boolean isMultipart = ServletFileUpload.isMultipartContent(httpServletRequest);
    // Create a factory for disk-based file items
    DiskFileItemFactory factory = new DiskFileItemFactory();

    // Configure a repository (to ensure a secure temp location is used)
    ServletContext servletContext = httpServletRequest.getSession().getServletContext();
    File repository = (File) servletContext.getAttribute("javax.servlet.context.tempdir");
    factory.setRepository(repository);

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

    DataInputStream inZip = null;
    // Parse the request
    try {// ww  w .j  a  v a 2  s .c o m
        List<FileItem> items = upload.parseRequest(httpServletRequest);
        // Process the uploaded items
        Iterator<FileItem> iter = items.iterator();
        while (iter.hasNext()) {
            FileItem item = iter.next();
            if (!item.isFormField()) {
                inZip = new DataInputStream(item.getInputStream());
                break;
            }
        }
    } catch (FileUploadException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

    String foldersfiles = null;
    String filename;
    String[] xmlFiles;
    String[] allFiles;
    //      int formDataLength = httpServletRequest.getContentLength();
    byte[] buff = new byte[0x100000]; // 1MB buffer

    // Recuperation de l'heure  laquelle le zip est cr
    //Calendar cal = Calendar.getInstance();
    //SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd-HH-mm-ss_S");
    //String now = sdf.format(cal.getTime());

    this.genererPortfolioUuidPreliminaire();

    javax.servlet.http.HttpSession session = httpServletRequest.getSession(true);
    String ppath = session.getServletContext().getRealPath("/");
    String outsideDir = ppath.substring(0, ppath.lastIndexOf(File.separator)) + "_files" + File.separator;
    File outsideDirectoryFile = new File(outsideDir);
    System.out.println(outsideDir);
    // if the directory does not exist, create it
    if (!outsideDirectoryFile.exists()) {
        outsideDirectoryFile.mkdir();
    }

    //Creation du zip
    filename = outsideDir + "xml_" + this.portfolioUuidPreliminaire + ".zip";
    FileOutputStream outZip = new FileOutputStream(filename);

    int len;

    while ((len = inZip.read(buff)) != -1) {
        outZip.write(buff, 0, len);
    }

    inZip.close();
    outZip.close();

    //-- unzip --
    foldersfiles = unzip(filename, outsideDir + this.portfolioUuidPreliminaire + File.separator);
    //TODO Attention si plusieurs XML dans le fichier
    xmlFiles = findFiles(outsideDir + this.portfolioUuidPreliminaire + File.separator, "xml");
    allFiles = findFiles(outsideDir + this.portfolioUuidPreliminaire + File.separator, null);

    ////// Lecture du fichier de portfolio
    StringBuffer outTrace = new StringBuffer();
    //// Importation du portfolio
    //--- Read xml fileL ----
    ///// Pour associer l'ancien uuid -> nouveau, pour les fichiers
    HashMap<String, String> resolve = new HashMap<String, String>();
    String portfolioUuid = "erreur";
    boolean hasLoaded = false;
    try {
        for (int i = 0; i < xmlFiles.length; i++) {
            String xmlFilepath = xmlFiles[i];
            String xmlFilename = xmlFilepath.substring(xmlFilepath.lastIndexOf(File.separator));
            if (xmlFilename.contains("_"))
                continue; // Case when we add an xml in the portfolio

            BufferedReader br = new BufferedReader(new FileReader(new File(xmlFilepath)));
            String line;
            StringBuilder sb = new StringBuilder();

            while ((line = br.readLine()) != null) {
                sb.append(line.trim());
            }
            String xml = "?";
            xml = sb.toString();

            portfolioUuid = UUID.randomUUID().toString();

            if (xml.contains("<portfolio")) // Le porfolio (peux mieux faire)
            {
                Document doc = DomUtils.xmlString2Document(xml, outTrace);

                Node rootNode = (doc.getElementsByTagName("portfolio")).item(0);
                if (rootNode == null)
                    throw new Exception("Root Node (portfolio) not found !");
                else {
                    rootNode = (doc.getElementsByTagName("asmRoot")).item(0);

                    String uuid = UUID.randomUUID().toString();

                    insertMysqlPortfolio(portfolioUuid, uuid, 0, userId);

                    writeNode(rootNode, portfolioUuid, null, userId, 0, uuid, null, 0, 0, false, resolve);
                }
                updateMysqlPortfolioActive(portfolioUuid, true);

                /// Finalement on cre un rle designer
                int groupid = postCreateRole(portfolioUuid, "designer", userId);

                /// Ajoute la personne dans ce groupe
                putUserGroup(Integer.toString(groupid), Integer.toString(userId));

                hasLoaded = true;
            }
        }
    } catch (Exception e) {
        e.printStackTrace();
    }

    if (hasLoaded)
        for (int i = 0; i < allFiles.length; i++) {
            String fullPath = allFiles[i];
            String tmpFileName = allFiles[i].substring(allFiles[i].lastIndexOf(File.separator) + 1);

            int index = tmpFileName.indexOf("_");
            if (index == -1)
                index = tmpFileName.indexOf(".");
            int last = tmpFileName.lastIndexOf(File.separator);
            if (last == -1)
                last = 0;
            String uuid = tmpFileName.substring(last, index);

            //         tmpFileName = allFiles[i].substring(allFiles[i].lastIndexOf(File.separator)+1);
            String lang;
            try {
                //            int tmpPos = tmpFileName.indexOf("_");
                lang = tmpFileName.substring(index + 1, index + 3);

                if ("un".equals(lang)) // Hack sort of fixing previous implementation
                    lang = "en";
            } catch (Exception ex) {
                lang = "";
            }

            InputStream is = new FileInputStream(allFiles[i]);
            byte b[] = new byte[is.available()];
            is.read(b);
            String extension;
            try {
                extension = tmpFileName.substring(tmpFileName.lastIndexOf(".") + 1);
            } catch (Exception ex) {
                extension = null;
            }

            // trop long
            //String tmpMimeType = FileUtils.getMimeType("file://"+allFiles[i]);
            String tmpMimeType = FileUtils.getMimeTypeFromExtension(extension);

            // Attention on initialise la ligne file
            // avec l'UUID d'origine de l'asmContext parent
            // Il sera mis  jour avec l'UUID asmContext final dans writeNode
            try {
                UUID tmpUuid = UUID.fromString(uuid); /// base uuid
                String resolved = resolve.get(uuid); /// New uuid
                String sessionval = session.getId();
                String user = (String) session.getAttribute("user");
                //            String test = outsideDir+File.separator+this.portfolioUuidPreliminaire+File.separator+tmpFileName;
                //            File file = new File(outsideDir+File.separator+this.portfolioUuidPreliminaire+File.separator+tmpFileName);
                File file = new File(fullPath);

                // server backend
                // fileserver
                String backend = session.getServletContext().getInitParameter("backendserver");

                if (resolved != null) {
                    /// Have to send it in FORM, compatibility with regular file posting
                    PostForm.sendFile(sessionval, backend, user, resolved, lang, file);

                    /// No need to fetch resulting ID, since we provided it
                    /*
                    InputStream objReturn = connect.getInputStream();
                    StringWriter idResponse = new StringWriter();
                    IOUtils.copy(objReturn, idResponse);
                    fileid = idResponse.toString();
                    //*/
                }

                /*
                if(tmpUuid.toString().equals(uuid))
                   this.putFile(uuid,lang,tmpFileName,outsideDir,tmpMimeType,extension,b.length,b,userId);
                //*/
            } catch (Exception ex) {
                // Le nom du fichier ne commence pas par un UUID,
                // ce n'est donc pas une ressource
                ex.printStackTrace();
            }
        }

    File zipfile = new File(filename);
    zipfile.delete();
    File zipdir = new File(outsideDir + this.portfolioUuidPreliminaire + File.separator);
    zipdir.delete();

    return portfolioUuid;
}

From source file:net.sourceforge.stripes.controller.multipart.CommonsMultipartWrapper.java

/**
 * Pseudo-constructor that allows the class to perform any initialization necessary.
 *
 * @param request     an HttpServletRequest that has a content-type of multipart.
 * @param tempDir a File representing the temporary directory that can be used to store
 *        file parts as they are uploaded if this is desirable
 * @param maxPostSize the size in bytes beyond which the request should not be read, and a
 *                    FileUploadLimitExceeded exception should be thrown
 * @throws IOException if a problem occurs processing the request of storing temporary
 *                    files//from  ww  w  . j  a va2  s.  c  om
 * @throws FileUploadLimitExceededException if the POST content is longer than the
 *                     maxPostSize supplied.
 */
@SuppressWarnings("unchecked")
public void build(HttpServletRequest request, File tempDir, long maxPostSize)
        throws IOException, FileUploadLimitExceededException {
    try {
        this.charset = request.getCharacterEncoding();
        DiskFileItemFactory factory = new DiskFileItemFactory();
        factory.setRepository(tempDir);
        ServletFileUpload upload = new ServletFileUpload(factory);
        upload.setSizeMax(maxPostSize);
        List<FileItem> items = upload.parseRequest(request);
        Map<String, List<String>> params = new HashMap<String, List<String>>();

        for (FileItem item : items) {
            // If it's a form field, add the string value to the list
            if (item.isFormField()) {
                List<String> values = params.get(item.getFieldName());
                if (values == null) {
                    values = new ArrayList<String>();
                    params.put(item.getFieldName(), values);
                }
                values.add(charset == null ? item.getString() : item.getString(charset));
            }
            // Else store the file param
            else {
                files.put(item.getFieldName(), item);
            }
        }

        // Now convert them down into the usual map of String->String[]
        for (Map.Entry<String, List<String>> entry : params.entrySet()) {
            List<String> values = entry.getValue();
            this.parameters.put(entry.getKey(), values.toArray(new String[values.size()]));
        }
    } catch (FileUploadBase.SizeLimitExceededException slee) {
        throw new FileUploadLimitExceededException(maxPostSize, slee.getActualSize());
    } catch (FileUploadException fue) {
        IOException ioe = new IOException("Could not parse and cache file upload data.");
        ioe.initCause(fue);
        throw ioe;
    }

}

From source file:net.ymate.platform.mvc.web.support.FileUploadHelper.java

/**
 * ??????//w  w  w  .  j  av  a 2  s .  c  o  m
 * 
 * @throws FileUploadException
 */
private UploadFormWrapper UploadFileAsDiskBased() throws FileUploadException {
    DiskFileItemFactory _factory = new DiskFileItemFactory();
    _factory.setRepository(this.__uploadTempDir);
    _factory.setSizeThreshold(this.__sizeThreshold);
    ServletFileUpload _upload = new ServletFileUpload(_factory);
    _upload.setFileSizeMax(this.__fileSizeMax);
    _upload.setSizeMax(this.__sizeMax);
    if (this.__listener != null) {
        _upload.setProgressListener(this.__listener);
    }
    UploadFormWrapper _form = new UploadFormWrapper();
    Map<String, List<String>> tmpParams = new HashMap<String, List<String>>();
    Map<String, List<UploadFileWrapper>> tmpFiles = new HashMap<String, List<UploadFileWrapper>>();
    //
    List<FileItem> _items = _upload.parseRequest(this.__request);
    for (FileItem _item : _items) {
        if (_item.isFormField()) {
            List<String> _valueList = tmpParams.get(_item.getFieldName());
            if (_valueList == null) {
                _valueList = new ArrayList<String>();
                tmpParams.put(_item.getFieldName(), _valueList);
            }
            try {
                _valueList.add(_item.getString(WebMVC.getConfig().getCharsetEncoding()));
            } catch (UnsupportedEncodingException e) {
                e.printStackTrace();
            }
        } else {
            List<UploadFileWrapper> _valueList2 = tmpFiles.get(_item.getFieldName());
            if (_valueList2 == null) {
                _valueList2 = new ArrayList<UploadFileWrapper>();
                tmpFiles.put(_item.getFieldName(), _valueList2);
            }
            _valueList2.add(new UploadFileWrapper(_item));
        }
    }
    //
    for (Entry<String, List<String>> entry : tmpParams.entrySet()) {
        String key = entry.getKey();
        List<String> value = entry.getValue();
        _form.getFieldMap().put(key, value.toArray(new String[value.size()]));
    }
    for (Entry<String, List<UploadFileWrapper>> entry : tmpFiles.entrySet()) {
        String key = entry.getKey();
        _form.getFileMap().put(key, entry.getValue().toArray(new UploadFileWrapper[entry.getValue().size()]));
    }
    return _form;
}

From source file:net.ymate.platform.webmvc.util.FileUploadHelper.java

/**
 * ??????/* ww  w  .j a va2  s . c  o m*/
 *
 * @throws FileUploadException ?
 */
private UploadFormWrapper UploadFileAsDiskBased() throws FileUploadException {
    DiskFileItemFactory _factory = new DiskFileItemFactory();
    _factory.setRepository(__uploadTempDir);
    _factory.setSizeThreshold(__sizeThreshold);
    //
    ServletFileUpload _upload = new ServletFileUpload(_factory);
    _upload.setFileSizeMax(__fileSizeMax);
    _upload.setSizeMax(__sizeMax);
    if (__listener != null) {
        _upload.setProgressListener(__listener);
    }
    UploadFormWrapper _form = new UploadFormWrapper();
    Map<String, List<String>> tmpParams = new HashMap<String, List<String>>();
    Map<String, List<UploadFileWrapper>> tmpFiles = new HashMap<String, List<UploadFileWrapper>>();
    //
    List<FileItem> _items = _upload.parseRequest(__request);
    for (FileItem _item : _items) {
        if (_item.isFormField()) {
            List<String> _valueList = tmpParams.get(_item.getFieldName());
            if (_valueList == null) {
                _valueList = new ArrayList<String>();
                tmpParams.put(_item.getFieldName(), _valueList);
            }
            try {
                _valueList.add(_item.getString(__charsetEncoding));
            } catch (UnsupportedEncodingException e) {
                __LOG.warn("", RuntimeUtils.unwrapThrow(e));
            }
        } else {
            List<UploadFileWrapper> _valueList = tmpFiles.get(_item.getFieldName());
            if (_valueList == null) {
                _valueList = new ArrayList<UploadFileWrapper>();
                tmpFiles.put(_item.getFieldName(), _valueList);
            }
            _valueList.add(new UploadFileWrapper(_item));
        }
    }
    //
    for (Map.Entry<String, List<String>> entry : tmpParams.entrySet()) {
        _form.getFieldMap().put(entry.getKey(), entry.getValue().toArray(new String[entry.getValue().size()]));
    }
    for (Map.Entry<String, List<UploadFileWrapper>> entry : tmpFiles.entrySet()) {
        _form.getFileMap().put(entry.getKey(),
                entry.getValue().toArray(new UploadFileWrapper[entry.getValue().size()]));
    }
    return _form;
}

From source file:neu.edu.lab08.HomeController.java

@RequestMapping(value = "/createpatient", method = RequestMethod.POST)
public String createpatient(Model model, HttpServletRequest request, HttpServletResponse response)
        throws Exception {
    //      String name = request.getParameter("name");
    //      String gender = (request.getParameter("gender"));
    //      String dob = request.getParameter("dob");
    //      String insurance= request.getParameter("insurance");
    //      Integer amount = Integer.parseInt(request.getParameter("amount"));

    HttpSession session = request.getSession();
    String username = (String) session.getAttribute("username");
    String name = (String) session.getAttribute("name");
    String gender = (String) session.getAttribute("gender");
    String dob = (String) session.getAttribute("dob");
    String insurance = (String) session.getAttribute("insurance");
    Integer amount = (Integer) session.getAttribute("amount");

    Session hibernateSession = HibernateUtil.getSessionFactory().openSession();
    hibernateSession.beginTransaction();

    String fileName = null;/*from  ww  w .j a v a2 s  .  com*/

    File file;
    int maxFileSize = 5000 * 1024;
    int maxMemSize = 5000 * 1024;

    String filePath = "/Users/mengqingwang/Downloads/lab08/src/main/webapp/resources/picture";

    // ?
    String contentType = request.getContentType();
    if ((contentType.indexOf("multipart/form-data") >= 0)) {

        DiskFileItemFactory factory = new DiskFileItemFactory();
        // 
        factory.setSizeThreshold(maxMemSize);
        // ? maxMemSize.
        factory.setRepository(new File("c:\\temp"));

        // ??
        ServletFileUpload upload = new ServletFileUpload(factory);
        // ?
        upload.setSizeMax(maxFileSize);
        try {
            // ??
            List fileItems = upload.parseRequest(request);

            // ?
            Iterator i = fileItems.iterator();

            while (i.hasNext()) {
                FileItem fi = (FileItem) i.next();
                if (!fi.isFormField()) {
                    // ??
                    String fieldName = fi.getFieldName();
                    fileName = fi.getName();
                    //String fileNamePath = "\\images\\"+fileName;

                    boolean isInMemory = fi.isInMemory();
                    long sizeInBytes = fi.getSize();
                    // 
                    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);
                }
            }
        } catch (Exception ex) {
            System.out.println(ex);
        }
        if (insurance.equals("Insured")) {
            InsuredPatient ip = new InsuredPatient();

            ip.setName(name);
            ip.setGender(gender);
            ip.setDob(dob);
            ip.setPatienttype(insurance);
            ip.setPicture(fileName);
            ip.setHospital(username);
            ip.setInsuredamount(amount);
            ip.setStatus(1);
            hibernateSession.save(ip);
            hibernateSession.getTransaction().commit();
        } else if (insurance.equals("Uninsured")) {
            UninsuredPatient up = new UninsuredPatient();

            up.setName(name);
            up.setGender(gender);
            up.setDob(dob);
            up.setPatienttype(insurance);
            up.setPicture(fileName);
            up.setHospital(username);
            up.setAccount(amount);
            up.setStatus(1);
            hibernateSession.save(up);
            hibernateSession.getTransaction().commit();
        }

    }
    return "hospitalMenu";
}

From source file:ngse.org.FileUploadServlet.java

static protected String FileUpload(Map<String, String> fields, List<String> filesOnServer,
        HttpServletRequest request, HttpServletResponse response) {

    boolean isMultipart = ServletFileUpload.isMultipartContent(request);
    // Create a factory for disk-based file items
    DiskFileItemFactory factory = new DiskFileItemFactory();
    int MaxMemorySize = 200000000;
    int MaxRequestSize = MaxMemorySize;
    String tmpDir = System.getProperty("TMP", "/tmp");

    factory.setSizeThreshold(MaxMemorySize);
    factory.setRepository(new File(tmpDir));
    ServletFileUpload upload = new ServletFileUpload(factory);
    upload.setHeaderEncoding("utf8");
    upload.setSizeMax(MaxRequestSize);/*from  ww w. j av  a2s . c  om*/
    try {
        List<FileItem> items = upload.parseRequest(request);
        // Process the uploaded items
        Iterator<FileItem> iter = items.iterator();
        while (iter.hasNext()) {
            FileItem item = iter.next();
            if (item.isFormField()) {//k -v

                String name = item.getFieldName();
                String value = item.getString("utf-8");
                fields.put(name, value);
            } else {

                String fieldName = item.getFieldName();
                String fileName = item.getName();
                if (fileName == null || fileName.length() < 1) {
                    return "file name is empty.";
                }
                String localFileName = ServletConfig.fileServerRootDir + File.separator + "tmp" + File.separator
                        + fileName;
                String contentType = item.getContentType();
                boolean isInMemory = item.isInMemory();
                long sizeInBytes = item.getSize();
                File uploadedFile = new File(localFileName);
                item.write(uploadedFile);
                filesOnServer.add(localFileName);
            }

        }
        return "success";
    } catch (FileUploadException e) {
        e.printStackTrace();
        return e.getMessage();
    } catch (Exception e) {
        e.printStackTrace();
        return e.getMessage();
    }

}

From source file:ngse.org.FileUploadTool.java

static public String FileUpload(Map<String, String> fields, List<String> filesOnServer,
        HttpServletRequest request, HttpServletResponse response) {

    boolean isMultipart = ServletFileUpload.isMultipartContent(request);
    // Create a factory for disk-based file items
    DiskFileItemFactory factory = new DiskFileItemFactory();
    int MaxMemorySize = 10000000;
    int MaxRequestSize = MaxMemorySize;
    String tmpDir = System.getProperty("TMP", "/tmp");
    System.out.printf("temporary directory:%s", tmpDir);

    // Set factory constraints
    factory.setSizeThreshold(MaxMemorySize);
    factory.setRepository(new File(tmpDir));

    // Create a new file upload handler
    ServletFileUpload upload = new ServletFileUpload(factory);
    upload.setHeaderEncoding("utf8");

    // Set overall request size constraint
    upload.setSizeMax(MaxRequestSize);//from  w  w  w  .j  a va  2  s.c  om

    // Parse the request
    try {
        List<FileItem> items = upload.parseRequest(request);
        // Process the uploaded items
        Iterator<FileItem> iter = items.iterator();
        while (iter.hasNext()) {
            FileItem item = iter.next();
            if (item.isFormField()) {//k -v

                String name = item.getFieldName();
                String value = item.getString("utf-8");
                fields.put(name, value);
            } else {

                String fieldName = item.getFieldName();
                String fileName = item.getName();
                if (fileName == null || fileName.length() < 1) {
                    return "file name is empty.";
                }
                String localFileName = ServletConfig.fileServerRootDir + File.separator + "tmp" + File.separator
                        + fileName;
                System.out.printf("upload file:%s", localFileName);
                String contentType = item.getContentType();
                boolean isInMemory = item.isInMemory();
                long sizeInBytes = item.getSize();
                File uploadedFile = new File(localFileName);
                item.write(uploadedFile);
                filesOnServer.add(localFileName);
            }

        }
        return "success";
    } catch (FileUploadException e) {
        e.printStackTrace();
        return e.toString();
    } catch (Exception e) {
        e.printStackTrace();
        return e.toString();
    }

}