Example usage for org.springframework.web.multipart MultipartHttpServletRequest getFileNames

List of usage examples for org.springframework.web.multipart MultipartHttpServletRequest getFileNames

Introduction

In this page you can find the example usage for org.springframework.web.multipart MultipartHttpServletRequest getFileNames.

Prototype

Iterator<String> getFileNames();

Source Link

Document

Return an java.util.Iterator of String objects containing the parameter names of the multipart files contained in this request.

Usage

From source file:com.sunflower.petal.controller.ImageController.java

@RequestMapping(value = "/upload", method = RequestMethod.POST)
public @ResponseBody Map upload(MultipartHttpServletRequest request, HttpServletResponse response) {
    log.debug("uploadPost called");
    Iterator<String> itr = request.getFileNames();
    MultipartFile mpf;/* w  w w .jav a  2  s  .c  om*/
    List<Image> list = new LinkedList<Image>();

    while (itr.hasNext()) {
        mpf = request.getFile(itr.next());
        log.debug("Uploading {}", mpf.getOriginalFilename());

        String newFilenameBase = UUID.randomUUID().toString();
        String originalFileExtension = mpf.getOriginalFilename()
                .substring(mpf.getOriginalFilename().lastIndexOf("."));
        String newFilename = newFilenameBase + originalFileExtension;
        String storageDirectory = fileUploadDirectory;
        String contentType = mpf.getContentType();

        File newFile = new File(storageDirectory + "/" + newFilename);
        try {
            mpf.transferTo(newFile);

            BufferedImage thumbnail = Scalr.resize(ImageIO.read(newFile), 290);
            String thumbnailFilename = newFilenameBase + "-thumbnail.png";
            File thumbnailFile = new File(storageDirectory + "/" + thumbnailFilename);
            ImageIO.write(thumbnail, "png", thumbnailFile);

            Image image = new Image();
            image.setName(mpf.getOriginalFilename());
            image.setThumbnailFilename(thumbnailFilename);
            image.setNewFilename(newFilename);
            image.setContentType(contentType);
            image.setSize(mpf.getSize());
            image = imageService.create(image);

            image.setUrl("/picture/" + image.getId());
            image.setThumbnailUrl("/thumbnail/" + image.getId());
            image.setDeleteUrl("/delete/" + image.getId());
            image.setDeleteType("DELETE");

            list.add(image);

        } catch (IOException e) {
            log.error("Could not upload file " + mpf.getOriginalFilename(), e);
        }

    }

    Map<String, Object> files = new HashMap<String, Object>();
    files.put("files", list);
    return files;
}

From source file:com.baidu.gcrm.materials.web.MaterialsAction.java

/**
 * //w  w w .  j a va  2  s .  co  m
 * 
 * @return
 */
@RequestMapping("/doUploadFile")
@ResponseBody
public Object doUploadFile(MultipartHttpServletRequest multipartRequest, HttpServletResponse response) {
    Iterator<String> it = multipartRequest.getFileNames();
    MultipartFile mpf = null;
    while (it.hasNext()) {
        String fileName = it.next();
        mpf = multipartRequest.getFile(fileName);
        log.debug("===" + fileName + "upload to local sever");
    }

    //
    Attachment attachment = new Attachment();
    attachment.setFieldName(mpf.getName());
    attachment.setName(mpf.getOriginalFilename());
    attachment.setCustomerNumber(-1L);
    attachment.setId(-1L);
    attachment.setTempUrl("");
    //attachment.setType(-1);
    attachment.setUrl("");
    //   attachment.setExit(false);
    try {
        attachment.setBytes(mpf.getBytes());
    } catch (IOException e) {
        log.error("=====" + e.getMessage());
        attachment.setMessage("failed");
        return attachment;
    }

    if (!StringUtils.isEmpty(mpf.getOriginalFilename())) {
        if (mpf.getOriginalFilename().endsWith(".exe")) {
            attachment.setMessage("materials.extension.error");//I18N?code
        } else {
            if (matericalsService.uploadFile(attachment)) {
                attachment.setMessage("success");
            } else {
                attachment.setMessage("failed");
            }
        }
    }

    //?
    String userAgent = multipartRequest.getHeader("user-agent").toLowerCase();
    if (userAgent.indexOf("msie 6") != -1 || userAgent.indexOf("msie 7") != -1
            || userAgent.indexOf("msie 8") != -1 || userAgent.indexOf("msie 9") != -1) {
        return JSONObject.toJSONString(attachment);

    }
    return attachment;
}

From source file:net.przemkovv.sphinx.web.TaskSolutionController.java

private Set<File> acquireFiles(MultipartHttpServletRequest request) throws IOException {
    Set<File> files = new HashSet<>();
    //1. build an iterator
    Iterator<String> itr = request.getFileNames();
    List<MultipartFile> multipartFiles = null;
    //2. get each file
    while (itr.hasNext()) {

        //2.1 get next MultipartFile
        multipartFiles = request.getFiles(itr.next());

        for (MultipartFile multipartFile : multipartFiles) {
            if (multipartFile.getSize() == 0)
                continue;
            ;// w  ww .  j av a 2s. com
            logger.debug("{} uploaded! ", multipartFile.getOriginalFilename());

            //2.3 create new fileMeta
            File fileMeta = new File();
            fileMeta.setName(multipartFile.getOriginalFilename());
            fileMeta.setSize(multipartFile.getSize());
            fileMeta.setMimeType(multipartFile.getContentType());

            fileMeta.setContent(multipartFile.getBytes());
            //2.4 add to files

            files.add(fileMeta);
        }

    }
    // result will be like this
    // [{"fileName":"app_engine-85x77.png","fileSize":"8 Kb","fileType":"image/png"},...]
    return files;
}

From source file:com.cami.web.controller.FileController.java

/**
 * *************************************************
 * URL: /appel-offre/file/upload upload(): receives files
 *
 * @param request : MultipartHttpServletRequest auto passed
 * @param response : HttpServletResponse auto passed
 * @param idAppelOffre//w ww  .j a  v  a 2  s  .c o  m
 * @return LinkedList<FileMeta> as json format
 * **************************************************
 */
@RequestMapping(value = "/{idAppelOffre}/upload", method = RequestMethod.POST, produces = {
        MediaType.APPLICATION_JSON_VALUE })
public @ResponseBody LinkedList<FileMeta> upload(MultipartHttpServletRequest request,
        HttpServletResponse response, @PathVariable String idAppelOffre) {

    //1. build an iterator
    Iterator<String> itr = request.getFileNames();
    MultipartFile mpf = null;
    AppelOffre appelOffre = appelOffreService.findOne(Long.valueOf(idAppelOffre));
    int i = 0;
    //2. get each file
    while (itr.hasNext()) {
        System.out.println("i = " + i);
        //2.1 get next MultipartFile
        mpf = request.getFile(itr.next());

        System.out.println(mpf.getOriginalFilename() + " uploaded! ");

        //2.2 if files > 10 remove the first from the list
        //             if(files.size() >= 10)
        //                 files.pop();
        //2.3 create new fileMeta
        //             fileMeta = new FileMeta();
        //             fileMeta.setFileName(saveName);
        //             fileMeta.setFileSize(mpf.getSize()/1024+" Kb");
        //             fileMeta.setFileType(mpf.getContentType());
        try {
            //fileMeta.setBytes(mpf.getBytes());

            // copy file to local disk (make sure the path "e.g. D:/temp/files" exists)            
            String saveName = getFileName(mpf, appelOffre);
            processFileData(mpf, SAVE_DIRECTORY, saveName);
            //FileCopyUtils.copy(mpf.getBytes(), new FileOutputStream("/home/gervais/" + saveName));
            appelOffre.addFile(saveName);
            appelOffre = appelOffreService.updateFiles(appelOffre);

        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        //2.4 add to files
        // files.add(fileMeta);
    }
    // result will be like this
    // [{"fileName":"app_engine-85x77.png","fileSize":"8 Kb","fileType":"image/png"},...]
    files = new LinkedList<>();
    for (String file : appelOffre.getFiles()) {
        fileMeta = new FileMeta();
        fileMeta.setFileName(file);
        files.add(fileMeta);
    }
    return files;
}

From source file:org.davidmendoza.fileUpload.web.VideoController.java

@RequestMapping(value = "/upload", method = RequestMethod.POST)
public @ResponseBody Map upload(MultipartHttpServletRequest request, HttpServletResponse response) {
    log.debug("upload Post called");
    Iterator<String> itr = request.getFileNames();
    MultipartFile mpf;//from  ww  w . j av  a  2  s. c  om
    List<Video> list = new LinkedList<>();

    while (itr.hasNext()) {
        mpf = request.getFile(itr.next());
        log.debug("Uploading {}", mpf.getOriginalFilename());

        String newFilenameBase = UUID.randomUUID().toString();
        String originalFileExtension = mpf.getOriginalFilename()
                .substring(mpf.getOriginalFilename().lastIndexOf("."));
        String newFilename = newFilenameBase + originalFileExtension;
        String storageDirectory = getRealPath(request);
        String contentType = mpf.getContentType();

        File newFile = new File(storageDirectory + "/" + newFilename);
        try {
            mpf.transferTo(newFile);

            Video video = new Video();
            video.setName(mpf.getOriginalFilename());
            video.setNewFilename(newFilename);
            video.setContentType(contentType);
            video.setSize(mpf.getSize());
            video = videoDao.create(video);

            video.setDeleteUrl("/video/delete/" + video.getId());
            video.setDeleteType("DELETE");

            list.add(video);

        } catch (IOException e) {
            log.error("Could not upload file " + mpf.getOriginalFilename(), e);
        }

    }

    Map<String, Object> files = new HashMap<>();
    files.put("files", list);
    return files;
}

From source file:com.nts.alphamaleWeb.controller.ServiceController.java

@RequestMapping(value = "/importJobs", method = RequestMethod.POST)
@ResponseBody/*from  ww  w  .  j a v  a  2  s .  com*/
public String importJobs(MultipartHttpServletRequest request, HttpServletResponse response) {

    ResultBody<String> result = new ResultBody<String>();
    Iterator<String> itr = request.getFileNames();
    MultipartFile mpf = null;

    Gson gson = new GsonBuilder().setPrettyPrinting().create();
    while (itr.hasNext()) {
        mpf = request.getFile(itr.next());
        try {
            String json = new String(mpf.getBytes());
            JsonArray arr = gson.fromJson(json, JsonArray.class);
            result.setCode(Code.OK, gson.toJson(arr));
        } catch (IOException e) {
            result.setCode(Code.F200);
        }
    }
    return result.toJson();
}

From source file:org.aksw.gerbil.web.FileUploadController.java

@RequestMapping(value = "upload", method = RequestMethod.POST)
public @ResponseBody ResponseEntity<UploadFileContainer> upload(MultipartHttpServletRequest request,
        HttpServletResponse response) {/*from w ww  . j av  a2  s  .c om*/

    if (path == null) {
        logger.error("Path must be not null");
        return new ResponseEntity<UploadFileContainer>(HttpStatus.INTERNAL_SERVER_ERROR);
    }

    LinkedList<FileMeta> files = new LinkedList<FileMeta>();
    MultipartFile mpf = null;

    for (Iterator<String> it = request.getFileNames(); it.hasNext();) {
        mpf = request.getFile(it.next());
        logger.debug("{} uploaded", mpf.getOriginalFilename());

        FileMeta fileContainer = new FileMeta();
        fileContainer.setName(mpf.getOriginalFilename());
        fileContainer.setSize(mpf.getSize() / 1024 + "Kb");
        fileContainer.setFileType(mpf.getContentType());

        try {
            fileContainer.setBytes(mpf.getBytes());
            createFolderIfNotExists();
            FileCopyUtils.copy(mpf.getBytes(), new FileOutputStream(path + mpf.getOriginalFilename()));

        } catch (IOException e) {
            logger.error("Error during file upload", e);
            fileContainer.setError(e.getMessage());
        }
        files.add(fileContainer);
    }

    UploadFileContainer uploadFileContainer = new UploadFileContainer(files);
    return new ResponseEntity<UploadFileContainer>(uploadFileContainer, HttpStatus.OK);
}

From source file:com.formkiq.core.api.FolderFilesController.java

/**
 * Save File to Folder./*w w w  .j  a  v  a2  s.  c o m*/
 * @param request {@link HttpServletRequest}
 * @param response {@link HttpServletResponse}
 * @param folder {@link String}
 * @param entity HttpEntity&lt;byte[]&gt;
 * @param lastSha1hash {@link String}
 * @return {@link ApiMessageResponse}
 * @throws IOException IOException
 */
@Transactional
@RequestMapping(value = API_FOLDER_FILE + "/{folder}", method = POST)
public ApiMessageResponse saveFolderFile(final HttpServletRequest request, final HttpServletResponse response,
        @PathVariable(name = "folder", required = true) final String folder,
        @RequestParam(value = "sha1hash", required = false) final String lastSha1hash,
        final HttpEntity<byte[]> entity) throws IOException {

    getApiVersion(request);

    FormSaveResult result = null;
    ApiMessageResponse msg = new ApiMessageResponse("Save successful");

    Enumeration<String> e = request.getHeaders("accept");
    boolean isAdmin = this.securityService.isAdmin()
            && this.securityService.hasAcceptHeader(e, ACCEPT_HEADER_ADMIN);

    if (request instanceof MultipartHttpServletRequest) {

        MultipartHttpServletRequest rr = (MultipartHttpServletRequest) request;

        Iterator<String> itr = rr.getFileNames();
        MultipartFile mpf = rr.getFile(itr.next());
        result = this.folderService.saveForm(folder, mpf.getBytes(), lastSha1hash, isAdmin);
        checkForValidationErrors(result.getErrors());
        response.addHeader("sha1hash", result.getSha1hash());

    } else {

        result = this.folderService.saveForm(folder, entity.getBody(), lastSha1hash, isAdmin);
        checkForValidationErrors(result.getErrors());
        response.addHeader("sha1hash", result.getSha1hash());
    }

    if (FolderFormStatus.IN_PROCESS.equals(result.getStatus())) {
        msg = new ApiMessageResponse("Saved as 'In Process'");
    }

    return msg;
}

From source file:com.igame.app.controller.Image2Controller.java

@RequestMapping(value = "/upload", method = RequestMethod.POST)
public @ResponseBody Map upload(MultipartHttpServletRequest request, HttpServletResponse response) {
    // HttpSession
    SecUser user = (SecUser) request.getSession().getAttribute("user");
    long appid = user.getAppid();
    log.debug("uploadPost called appid:{}" + appid);
    Iterator<String> itr = request.getFileNames();
    MultipartFile mpf;/*from   w ww .  j  a  v  a 2 s . c  om*/
    List<Image> list = new LinkedList<>();

    while (itr.hasNext()) {
        mpf = request.getFile(itr.next());
        log.debug("Uploading {}", mpf.getOriginalFilename());

        long id = IDGenerator.getKey();
        // String newFilenameBase = String.valueOf(id);
        String originalFileExtension = mpf.getOriginalFilename()
                .substring(mpf.getOriginalFilename().lastIndexOf("."));
        String newFilename = id + originalFileExtension;
        String storageDirectory = fileUploadDirectory;
        String contentType = mpf.getContentType();

        File newFile = new File(storageDirectory + "/" + "app-" + appid + "/" + newFilename);

        if (!newFile.getParentFile().exists()) {
            log.debug(" {}" + newFile.getParentFile().getPath());
            newFile.getParentFile().mkdirs();
        }

        try {
            mpf.transferTo(newFile);

            BufferedImage thumbnail = Scalr.resize(ImageIO.read(newFile), 150);
            String thumbnailFilename = id + "-thumbnail.png";
            File thumbnailFile = new File(storageDirectory + "/" + "app-" + appid + "/" + thumbnailFilename);
            ImageIO.write(thumbnail, "png", thumbnailFile);

            Image image = new Image();
            image.setId(id);
            image.setAppid(appid);
            image.setName(mpf.getOriginalFilename());
            image.setThumbnailFilename(thumbnailFilename);
            image.setNewFilename(newFilename);
            image.setContentType(contentType);
            image.setSize(mpf.getSize());
            image.setThumbnailSize(thumbnailFile.length());
            image = imageService.create(image);

            image.setUrl("app-" + appid + "/" + newFilename);
            image.setThumbnailUrl("app-" + appid + "/" + thumbnailFilename);
            image.setDeleteUrl("delete/" + image.getId());
            image.setDeleteType("DELETE");

            list.add(image);

        } catch (IOException e) {
            log.error("Could not upload file " + mpf.getOriginalFilename(), e);
        }

    }

    Map<String, Object> files = new HashMap<>();
    files.put("files", list);
    return files;
}