Example usage for org.springframework.web.multipart.commons CommonsMultipartFile transferTo

List of usage examples for org.springframework.web.multipart.commons CommonsMultipartFile transferTo

Introduction

In this page you can find the example usage for org.springframework.web.multipart.commons CommonsMultipartFile transferTo.

Prototype

@Override
    public void transferTo(Path dest) throws IOException, IllegalStateException 

Source Link

Usage

From source file:com.kabone.research.common.utils.FileUtil.java

public static List<Map<String, Object>> getFileInfo2(String BUCKET_NAME, String S3_ENDPOINT, String ACCESS_KEY,
        String SECRET_KEY, MultiValueMap<String, MultipartFile> map, String realPath, String dirPath,
        boolean thumbnail) throws Exception {
    //public static List<Map<String,Object>> getFileInfo2(MultiValueMap<String, MultipartFile> map, String realPath, String dirPath, boolean thumbnail) throws Exception {

    Date time = Calendar.getInstance().getTime();
    SimpleDateFormat formatter = new SimpleDateFormat("yyyyMMddHHmmssS");
    String formatDate = formatter.format(time);

    List<Map<String, Object>> fileList = new ArrayList<Map<String, Object>>();
    Iterator<String> iterator = map.keySet().iterator();

    String savePath = dirPath + "/";

    String realFilePath = realPath + savePath;
    /*//  www. j  a va2 s .  c  o  m
    String logicalPath = savePath;
            
    if(File.separator.equalsIgnoreCase("\\")) {
    logicalPath = savePath.replaceAll("\\\\", "/");
    }
    */
    File fDir = new File(realFilePath);
    if (!fDir.exists()) {
        fDir.mkdirs();
    }

    AWSUtil.s3MakeFolder(S3_ENDPOINT, BUCKET_NAME, ACCESS_KEY, SECRET_KEY, dirPath);

    while (iterator.hasNext()) {

        Map<String, Object> fileMap = new HashMap<String, Object>();

        String key = iterator.next();
        LinkedList<MultipartFile> df = (LinkedList<MultipartFile>) map.get(key);

        CommonsMultipartFile fileInfo = (CommonsMultipartFile) df.getFirst();
        if (fileInfo.getSize() > 0) {
            fileMap.put("key", key);

            int idx = fileInfo.getOriginalFilename().lastIndexOf(".");

            String extName = "";
            if (idx != -1) {
                extName = fileInfo.getOriginalFilename().substring(idx,
                        fileInfo.getOriginalFilename().length());
            }
            String fileName = formatDate + fileInfo.getName() + extName;
            File file1 = new File(realFilePath + fileName);
            fileInfo.transferTo(file1);

            logger.info("fileInfo.getOriginalFilename() : " + fileInfo.getOriginalFilename());

            String filePath = AWSUtil.s3FileUpload(S3_ENDPOINT, BUCKET_NAME, ACCESS_KEY, SECRET_KEY,
                    savePath + fileName, realFilePath + fileName);

            logger.info("filePath : " + filePath);

            fileMap.put("path", filePath);
            fileMap.put("name", fileInfo.getOriginalFilename());
            fileMap.put("size", "" + fileInfo.getSize());

            //??
            if (thumbnail) {
                int imageWidth = 0;
                int imageHeight = 0;
                //? ? ?? ?
                if ("mainImg".equals(fileInfo.getName())) {
                    //??
                    imageWidth = 645;
                    imageHeight = 485;
                } else if ("cardImg".equals(fileInfo.getName())) {
                    //?
                    imageWidth = 224;
                    imageHeight = 180;
                } else if ("storyImg".equals(fileInfo.getName())) {
                    //
                    imageWidth = 148;
                    imageHeight = 98;
                } else if ("ftypeMainImg".equals(fileInfo.getName())) {
                    // ??
                    imageWidth = 980;
                    imageHeight = 400;
                } else if ("choiceImg".equals(fileInfo.getName())) {
                    // Editor's Choice ?
                    imageWidth = 160;
                    imageHeight = 70;
                }

                if (imageWidth != 0 && imageHeight != 0) {
                    File originFileName = new File(realFilePath + fileName);
                    File thumbFileName = new File(realFilePath + "thumbnail_" + fileName);

                    boolean result = thumbnail(imageWidth, imageHeight, originFileName, thumbFileName);
                    String filePath2 = "";
                    if (result) {
                        filePath2 = AWSUtil.s3FileUpload(S3_ENDPOINT, BUCKET_NAME, ACCESS_KEY, SECRET_KEY,
                                savePath + "thumbnail_" + fileName, realFilePath + "thumbnail_" + fileName);
                    }

                    if (thumbFileName.exists()) {
                        thumbFileName.delete();
                    }

                    fileMap.put("thumbPath", filePath2);
                }
            }

            if (file1.exists()) {
                file1.delete();
            }

            fileList.add(fileMap);
        }

    }

    return fileList;
}

From source file:com.kabone.research.common.utils.FileUtil.java

/**
 * ?/*from   ww  w  .  j a v  a2 s .com*/
 * @param map
 * @param realPath
 * @param dirPath
 * @param thumbnail
 * @return
 * @throws IllegalStateException
 * @throws IOException
 */
public static List<Map<String, Object>> getFileInfo(MultiValueMap<String, MultipartFile> map, String realPath,
        String dirPath, boolean thumbnail) throws IllegalStateException, IOException {

    Date time = Calendar.getInstance().getTime();
    SimpleDateFormat formatter = new SimpleDateFormat("yyyyMMddHHmmssS");
    String formatDate = formatter.format(time);

    List<Map<String, Object>> fileList = new ArrayList<Map<String, Object>>();

    Iterator<String> iterator = map.keySet().iterator();

    //  savePath ? /yyyy/mm/ ??   
    String savePath = dirPath + File.separator + StringUtils.substring(formatDate, 0, 4) + File.separator
            + StringUtils.substring(formatDate, 4, 6) + File.separator;

    String realFilePath = realPath + savePath;
    String logicalPath = savePath;

    if (File.separator.equalsIgnoreCase("\\")) {
        logicalPath = savePath.replaceAll("\\\\", "/");
    }

    while (iterator.hasNext()) {

        Map<String, Object> fileMap = new HashMap<String, Object>();

        String key = iterator.next();
        LinkedList<MultipartFile> df = (LinkedList<MultipartFile>) map.get(key);

        CommonsMultipartFile fileInfo = (CommonsMultipartFile) df.getFirst();
        if (fileInfo.getSize() > 0) {
            fileMap.put("key", key);

            int idx = fileInfo.getOriginalFilename().lastIndexOf(".");

            String extName = "";
            if (idx != -1) {
                extName = fileInfo.getOriginalFilename().substring(idx,
                        fileInfo.getOriginalFilename().length());
            }

            File fDir = new File(realFilePath);
            if (!fDir.exists()) {
                fDir.mkdirs();
            }

            File file1 = new File(realFilePath + formatDate + fileInfo.getName() + extName);
            fileInfo.transferTo(file1);

            logger.info("fileInfo.realFilePath() : " + realFilePath);
            logger.info("fileInfo.logicalPath() : " + logicalPath);
            logger.info("fileInfo.getOriginalFilename() : " + fileInfo.getOriginalFilename());
            logger.info("fileInfo.getName() : " + fileInfo.getName());
            logger.info("fileInfo.path() : " + logicalPath + formatDate + fileInfo.getName() + extName);

            fileMap.put("path", logicalPath + formatDate + fileInfo.getName() + extName);
            fileMap.put("name", fileInfo.getOriginalFilename());
            fileMap.put("size", "" + fileInfo.getSize());

            //??
            if (thumbnail) {
                int imageWidth = 0;
                int imageHeight = 0;
                //? ? ?? ?
                if ("mainImg".equals(fileInfo.getName())) {
                    logger.info("? ? ?? ?");
                    imageWidth = 645;
                    imageHeight = 485;
                } else if ("cardImg".equals(fileInfo.getName())) {
                    logger.info(" ? ?? ?");
                    imageWidth = 240;
                    imageHeight = 180;
                }

                if (imageWidth != 0 && imageHeight != 0) {
                    File originFileName = new File(realFilePath + formatDate + fileInfo.getName() + extName);
                    File thumbFileName = new File(
                            realFilePath + "thumbnail_" + formatDate + fileInfo.getName() + extName);

                    thumbnail(imageWidth, imageHeight, originFileName, thumbFileName);

                    fileMap.put("thumb",
                            logicalPath + "thumbnail_" + formatDate + fileInfo.getName() + extName);
                }
            }
            fileList.add(fileMap);
        }

    }

    return fileList;
}

From source file:com.necl.service.HandlerFileUpload.java

public void handleFileUploadToPath(CommonsMultipartFile fileUpload) throws Exception {

    String saveDirectory = "D://file";

    if (fileUpload != null && fileUpload.getSize() > 0) {

        String newFileName = "";
        newFileName = convertNameAndTypeFile(fileUpload.getOriginalFilename());

        File files = new File(saveDirectory + File.separator + newFileName);
        if (!files.exists()) {
            files.mkdirs();/*from  www .ja v a2 s.c  om*/
        }
        fileUpload.transferTo(files);

    }
    System.out.println("SYSTEM ALEART UPLOAD FILE SUCCESSFUL");
}

From source file:com.necl.service.HandlerFileUpload.java

public void handleFileUploadToPathForm(CommonsMultipartFile fileUpload) throws Exception {

    String saveDirectory = "D://file/report";

    if (fileUpload != null && fileUpload.getSize() > 0) {

        String newFileName = "";
        newFileName = convertNameAndTypeFile(fileUpload.getOriginalFilename());

        File files = new File(saveDirectory + File.separator + newFileName);
        if (!files.exists()) {
            files.mkdirs();//from  w  w  w .  j a  v  a 2  s  .co  m
        }
        fileUpload.transferTo(files);
        System.out.println("save file at ");
    }
    System.out.println("SYSTEM ALEART UPLOAD FILE SUCCESSFUL");
}

From source file:com.crimelab.controller.UploadController.java

@RequestMapping(value = "/uploadFile", method = RequestMethod.POST)
public ModelAndView showCompositeDetails(Model model,
        @RequestParam(value = "file") CommonsMultipartFile uploadedFile,
        @RequestParam(value = "description", required = false) String fileDescription,
        @RequestParam(value = "sococase", required = false) String soco_case) throws IOException {
    Calendar currentTimeDate = Calendar.getInstance();
    File filePath = new File(fileUploadService.getFileUploadPath() + "\\Files\\");
    ModelAndView mv = new ModelAndView("redirect:FileUpload");

    if (!filePath.exists()) {
        filePath.mkdir();/*from  w  w w  .  j  a v a  2  s  .c  o  m*/
    }
    String status = "success";
    try {
        uploadedFile.transferTo(new File(filePath + "\\" + uploadedFile.getOriginalFilename()));
    } catch (IllegalStateException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
        status = "failure";
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
        status = "iofailure";
    }

    int file_type;

    String fileType = uploadedFile.getContentType();
    String getFile = uploadedFile.getOriginalFilename();
    String[] fileExtension = getFile.split("\\.", 2);

    if (fileExtension[1].contains("doc") || fileExtension[1].contains("pdf")
            || fileExtension[1].contains("xls")) {
        file_type = 0;
    } else {
        file_type = 1;
    }

    Files input = new Files();

    input.setFile_type(file_type);
    input.setOrig_file_name(uploadedFile.getOriginalFilename());
    input.setFile_name(uploadedFile.getOriginalFilename());
    input.setFile_extension(fileExtension[1]);
    input.setFile_path(filePath.toString() + "\\" + uploadedFile.getOriginalFilename());
    input.setDate(currentTimeDate.getTime());
    input.setDescription(fileDescription);
    input.setSoco_case(soco_case);
    input.setFolder_id(1); // Related field
    fileUploadService.uploadFile(input);
    //site settings for fileLocation, to edit
    mv.addObject("status", status);
    return mv;
}

From source file:com.necl.service.HandlerFileUpload.java

public void handleFileUploadToPathTaget(CommonsMultipartFile fileUpload, String partDirectory, String fileName)
        throws Exception {

    //String saveDirectory = "D://file/report";
    String saveDirectory = partDirectory;
    if (fileUpload != null && fileUpload.getSize() > 0) {

        String newFileName = fileName;
        if (newFileName == null || newFileName == "") {
            newFileName = convertNameAndTypeFile(fileUpload.getOriginalFilename());
        }//from  w w w  .  j  a v  a  2s  . com

        File files = new File(saveDirectory + File.separator + newFileName);
        if (!files.exists()) {
            files.mkdirs();
        }
        fileUpload.transferTo(files);
        System.out.println("save file at ");
    }
    System.out.println("SYSTEM ALEART UPLOAD FILE SUCCESSFUL");
}

From source file:com.necl.core.service.HandlerFileUpload.java

public void handleFileUploadToPath2(CommonsMultipartFile fileUpload, String username) throws Exception {

    Calendar now = Calendar.getInstance();
    //        int year = now.get(Calendar.YEAR);

    String keyFind = "PATH";
    ConfigSystem configSystem = configSystemService.findByKey(keyFind);
    String saveDirectory = configSystem.getConfigText();

    //        File file = new File(saveDirectory + File.separator + convertNameAndTypeFile(fileUpload.getOriginalFilename(), numberTicket));
    //        System.out.println("file: "+file);
    //        file.delete();
    if (fileUpload != null && fileUpload.getSize() > 0) {
        File files = new File(saveDirectory + File.separator
                + convertNameAndTypeFile2(fileUpload.getOriginalFilename(), username));
        if (!files.exists()) {
            files.mkdirs();// w  w  w  . j  a  v  a2 s  .  co m
        }
        if (!username.equals("")) {
            fileUpload.transferTo(files);
        }

    }

    // returns to the view "Result"
}

From source file:com.necl.core.service.HandlerFileUpload.java

public void handleFileUploadToPath(CommonsMultipartFile fileUpload, String numberTicket) throws Exception {

    Calendar now = Calendar.getInstance();
    //        int year = now.get(Calendar.YEAR);
    String yearInString = "20" + numberTicket.substring(3, 5);

    String keyFind = "PATH";
    ConfigSystem configSystem = configSystemService.findByKey(keyFind);
    String saveDirectory = configSystem.getConfigText() + yearInString;

    //        File file = new File(saveDirectory + File.separator + convertNameAndTypeFile(fileUpload.getOriginalFilename(), numberTicket));
    //        System.out.println("file: "+file);
    //        file.delete();
    if (fileUpload != null && fileUpload.getSize() > 0) {
        File files = new File(saveDirectory + File.separator
                + convertNameAndTypeFile(fileUpload.getOriginalFilename(), numberTicket));
        if (!files.exists()) {
            files.mkdirs();// www.  j a v  a 2s.  co  m
        }
        if (!numberTicket.equals("")) {
            fileUpload.transferTo(files);
        }

    }

    // returns to the view "Result"
}

From source file:com.msds.km.reparifacoty.controller.DrivingLicenseController.java

protected File saveFile(CommonsMultipartFile file, HttpServletRequest request) {
    SimpleDateFormat dateformat = new SimpleDateFormat("yyyy/MM/dd/HH");
    /** ? **//*from   w  w w .j a  v  a2 s. co  m*/
    String logoPathDir = "/files" + dateformat.format(new Date());
    String contextPath = request.getSession().getServletContext().getRealPath("/");
    /** ? **/
    //      String logoRealPathDir = request.getSession().getServletContext().getRealPath(logoPathDir);
    String sep = System.getProperty("file.separator");
    if (contextPath.endsWith(sep)) {
        contextPath = contextPath.substring(0, contextPath.length() - 1);
    }
    String logoRealPathDir = contextPath.substring(0, contextPath.lastIndexOf(sep)) + logoPathDir;
    /** ? **/
    File logoSaveFile = new File(logoRealPathDir);
    if (!logoSaveFile.exists())
        logoSaveFile.mkdirs();
    /** ?? **/
    String suffix = file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf("."));
    /** UUID??? **/
    String logImageName = UUID.randomUUID().toString() + suffix;
    /** ?? **/
    String fileName = logoRealPathDir + File.separator + logImageName;
    File savedFile = new File(fileName);
    try {
        file.transferTo(savedFile);
        return savedFile;
    } catch (IllegalStateException e) {
        throw new RecognitionException(e);
    } catch (IOException e) {
        throw new RecognitionException(e);
    }
}

From source file:eu.europa.ec.eci.oct.admin.controller.SettingsController.java

@Override
protected String _doPost(Model model, SettingsBean bean, BindingResult result, SessionStatus status,
        HttpServletRequest request, HttpServletResponse response) throws OCTException {
    if (request.getParameter("saveSettings") != null) {
        ConfigurationParameter param;/*from  ww w  . ja v  a2  s.c o m*/

        // custom logo settings
        if (bean.isDeleteLogo()) {
            param = configurationService.getConfigurationParameter(Parameter.LOGO_PATH);

            // delete file from disk
            final String storagePath = systemManager.getSystemPreferences().getFileStoragePath();
            final File destFolder = new File(storagePath, "/custom");
            final File dest = new File(destFolder, param.getValue());
            dest.delete();

            // update db
            param.setValue(Parameter.LOGO_PATH.getDefaultValue());
            configurationService.updateParameter(param);
        } else {
            final CommonsMultipartFile file = bean.getLogoFile();
            if (file != null && !"".equals(file.getOriginalFilename())) {
                if (logger.isDebugEnabled()) {
                    logger.debug(
                            "Uploaded new logo file: " + file.getFileItem().getName() + " / " + file.getSize());
                }

                // validate uploaded logo file
                final Map<MultipartFileValidator.RejectReason, String> rejectDetailsMap = new HashMap<MultipartFileValidator.RejectReason, String>();
                rejectDetailsMap.put(RejectReason.EMPTY_CONTENT, "oct.settings.error.logo.missing");
                rejectDetailsMap.put(RejectReason.EMPTY_NAME, "oct.settings.error.logo.missing");
                rejectDetailsMap.put(RejectReason.BAD_EXTENSION, "oct.settings.error.logo.badExtension");
                rejectDetailsMap.put(RejectReason.MAX_SIZE_EXCEEDED, "oct.settings.error.logo.toobig");

                final Validator validator = new MultipartFileValidator(getCurrentMessageBundle(request),
                        "oct.settings.error.logo.upload", rejectDetailsMap, uploadExtensionWhitelist, 150000);
                validator.validate(file, result);
                if (result.hasErrors()) {
                    return doGet(model, request, response);
                }

                // validation passed, save file to needed location and
                // update the db
                final String storagePath = systemManager.getSystemPreferences().getFileStoragePath();
                final File destFolder = new File(storagePath, "/custom");
                if (!destFolder.exists()) {
                    boolean dirCreated = destFolder.mkdirs();
                    if (logger.isDebugEnabled()) {
                        logger.debug(
                                "Storage directory \"" + destFolder.getPath() + "\" created? => " + dirCreated);
                    }
                }

                final String extension = file.getOriginalFilename()
                        .substring(file.getOriginalFilename().lastIndexOf('.'));
                final String fileName = new StringBuilder().append("customlogo")
                        .append(System.currentTimeMillis()).append(extension).toString();

                final File dest = new File(destFolder, fileName);
                try {
                    file.transferTo(dest);
                    if (logger.isDebugEnabled()) {
                        logger.debug("Uploaded logo file successfully transfered to the local file "
                                + dest.getAbsolutePath());
                    }
                } catch (IllegalStateException e) {
                    logger.error("illegal state error while uploading logo", e);
                    result.reject("oct.settings.error.logo.upload", "Error uploading logo");
                    return doGet(model, request, response);
                } catch (IOException e) {
                    logger.error("input/output error while uploading logo", e);
                    result.reject("oct.settings.error.logo.upload", e.getMessage());
                    return doGet(model, request, response);
                }

                param = new ConfigurationParameter();
                param.setParam(Parameter.LOGO_PATH.getKey());
                param.setValue(fileName);
                configurationService.updateParameter(param);
            }
        }

        // callback url
        final String callbackUrl = bean.getCallbackUrl();
        if (callbackUrl != null && !"".equals(callbackUrl)) {
            // validate url
            UrlValidator validator = UrlValidator.getInstance();
            if (!validator.isValid(callbackUrl)) {
                result.rejectValue("callbackUrl", "oct.settings.error.callback.invalidurl",
                        "An invalid URL has been specified.");
                return doGet(model, request, response);
            }
        }
        param = new ConfigurationParameter();
        param.setParam(Parameter.CALLBACK_URL.getKey());
        param.setValue(callbackUrl);
        configurationService.updateParameter(param);

        // optional validation
        param = new ConfigurationParameter();
        param.setParam(Parameter.OPTIONAL_VALIDATION.getKey());
        param.setValue(new Boolean(bean.getOptionalValidation()).toString());
        configurationService.updateParameter(param);

        // distribution map
        param = new ConfigurationParameter();
        param.setParam(Parameter.SHOW_DISTRIBUTION_MAP.getKey());
        param.setValue(new Boolean(bean.getDisplayMap()).toString());
        configurationService.updateParameter(param);
    }

    return "redirect:settings.do";
}