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

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

Introduction

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

Prototype

@Override
    public String getOriginalFilename() 

Source Link

Usage

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

/**
 * ?//  www  . jav a2s.  co m
 * @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.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;
    /*//from www  .j  a v a  2 s  . co  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:org.smigo.constraints.CommonsMultipartFileMimeTypeValidator.java

public boolean isValid(CommonsMultipartFile file, ConstraintValidatorContext constraintContext) {
    log.debug("Validating:" + file.getOriginalFilename() + " contenttype:" + file.getContentType()
            + " storagedescrip:" + file.getStorageDescription());
    return file.isEmpty() || mimeTypes.contains(file.getContentType());
}

From source file:org.smigo.constraints.CommonsMultipartFileImageValidator.java

public boolean isValid(CommonsMultipartFile file, ConstraintValidatorContext constraintContext) {
    log.debug("Validating:" + file.getOriginalFilename() + " contenttype:" + file.getContentType()
            + " storagedescrip:" + file.getStorageDescription());
    if (file.isEmpty())
        return true;
    try {//from   w ww .j a v a 2s.c  o m
        BufferedImage image = ImageIO.read(file.getInputStream());
        if (image.getHeight() == height && image.getWidth() == width)
            return true;
    } catch (Exception e) {
        return false;
    }
    return false;
}

From source file:com.mycompany.capstone.controllers.ImageController.java

@RequestMapping(value = "/doUpload", method = RequestMethod.POST)
public String handleFileUpload(@RequestParam(value = "userfile") CommonsMultipartFile[] fileUpload, Map model) {

    if (fileUpload != null && fileUpload.length > 0) {
        for (CommonsMultipartFile aFile : fileUpload) {

            System.out.println("Saving file: " + aFile.getOriginalFilename());

            Image uploadFile = new Image();
            uploadFile.setImagePath(aFile.getOriginalFilename());
            uploadFile.setImageData(aFile.getBytes());
            adminPageImageDao.create(uploadFile);

            model.put("uploadFile", uploadFile);

        }/* w  ww .  ja  v  a  2s  .c om*/
    }

    return "upload_result";
}

From source file:com.lohika.alp.reporter.fe.controller.LogController.java

@RequestMapping(method = RequestMethod.POST, value = "/results/test-method/{testMethodId}/log")
void saveLog(@PathVariable("testMethodId") long id, @ModelAttribute("uploadItem") UploadItem uploadItem,
        HttpServletResponse response) throws IOException {

    CommonsMultipartFile fileData = uploadItem.getFileData();

    // TODO Handle unexpected form data
    String name = fileData.getOriginalFilename();
    InputStream is = fileData.getInputStream();

    // If file extension is '.xml' or none save it as 'index.xml'
    if (name.toLowerCase().endsWith(".xml") || !name.matches(".*\\.\\w{1,3}$")) {

        logStorage.saveLog(id, "index.xml", is);

        // TODO TestMethod database creation should be performed with Spring
        // and REST web services, not from test listeners directly
        TestMethod testMethod = testMethodDAO.getTestMethod(id);

        // Set into DB that TestMethod has index log file
        testMethod.setHasLog(true);//  w w  w.  ja v a  2 s.c  o  m
        testMethodDAO.saveTestMethod(testMethod);
    } else {
        // Else save it with its original name

        logStorage.saveLog(id, name, is);
    }

    response.setStatus(HttpServletResponse.SC_CREATED);
    // TODO add log URL to response according REST principles
}

From source file:fr.putnami.pwt.plugin.spring.file.server.controller.FileTransfertController.java

@RequestMapping(value = "/file/upload/{uploadId}", method = RequestMethod.POST)
@ResponseBody/*from   w w w  . j  av  a2s.c om*/
public FileDto upload(@PathVariable String uploadId, @RequestParam("data") CommonsMultipartFile multipart,
        HttpServletRequest request, HttpServletResponse response) {
    OutputStream out = null;
    InputStream in = null;
    try {
        out = this.store.write(uploadId, multipart.getOriginalFilename(), multipart.getContentType());
        in = multipart.getInputStream();
        IOUtils.copy(in, out);
        return this.store.getFileBean(uploadId);
    } catch (IOException e) {
        throw new RuntimeException(e.getMessage(), e);
    } finally {
        IOUtils.closeQuietly(in);
        IOUtils.closeQuietly(out);
    }
}

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  w  ww  .ja v a 2 s.c  o  m
        }
        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  . java  2  s.  c om*/
        }
        fileUpload.transferTo(files);
        System.out.println("save file at ");
    }
    System.out.println("SYSTEM ALEART UPLOAD FILE SUCCESSFUL");
}

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  www.  ja v  a 2s .  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";
}