List of usage examples for org.springframework.web.multipart.commons CommonsMultipartFile getOriginalFilename
@Override
public String getOriginalFilename()
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"; }