List of usage examples for org.springframework.web.multipart MultipartFile getOriginalFilename
@Nullable String getOriginalFilename();
From source file:it.cilea.osd.jdyna.editor.FilePropertyEditor.java
@Override public void setValue(Object value) { if (value instanceof MultipartFile) { MultipartFile multipart = (MultipartFile) value; if (multipart.getSize() > 0) { try { EmbeddedFile file = widgetFile.load(multipart.getInputStream(), multipart.getOriginalFilename(), multipart.getContentType(), getExternalAuthority(), getInternalAuthority()); super.setValue(new ValoreDTO(file)); } catch (IOException ex) { log.warn("Cannot read contents of multipart file", ex); throw new IllegalArgumentException( "Cannot read contents of multipart file: " + ex.getMessage()); }// w ww. j av a2 s .com } else { setValue(null); } } else { super.setValue(value); } }
From source file:org.openlmis.fulfillment.service.TemplateServiceTest.java
@Test public void shouldThrowErrorIfThereAreExtraParameterProperties() throws Exception { expectedException.expect(ReportingException.class); expectedException.expectMessage(REPORTING_EXTRA_PROPERTIES); MultipartFile file = mock(MultipartFile.class); when(file.getOriginalFilename()).thenReturn(NAME_OF_FILE); mockStatic(JasperCompileManager.class); JasperReport report = mock(JasperReport.class); InputStream inputStream = mock(InputStream.class); when(file.getInputStream()).thenReturn(inputStream); JRParameter param1 = mock(JRParameter.class); JRPropertiesMap propertiesMap = mock(JRPropertiesMap.class); when(report.getParameters()).thenReturn(new JRParameter[] { param1 }); when(JasperCompileManager.compileReport(inputStream)).thenReturn(report); when(param1.getPropertiesMap()).thenReturn(propertiesMap); String[] propertyNames = { "name1", "name2", "name3" }; when(propertiesMap.getPropertyNames()).thenReturn(propertyNames); Template template = new Template(); templateService.validateFileAndInsertTemplate(template, file); verify(templateService, never()).saveWithParameters(template); }
From source file:com.lioland.harmony.web.controller.FileController.java
/** * ************************************************* * URL: /rest/controller/upload upload(): receives files * * @param request : MultipartHttpServletRequest auto passed * @param response : HttpServletResponse auto passed * @return LinkedList<FileMeta> as json format * ************************************************** *///from w ww. j av a 2s . co m @RequestMapping(value = "/file-upload", method = RequestMethod.POST) public @ResponseBody LinkedList<FileMeta> upload(HttpServletRequest req, HttpServletResponse response) { MultipartHttpServletRequest request = (MultipartHttpServletRequest) req; //1. build an iterator Iterator<String> itr = request.getFileNames(); MultipartFile mpf = null; //2. get each file while (itr.hasNext()) { //2.1 get next MultipartFile mpf = request.getFile(itr.next()); System.out.println(mpf.getOriginalFilename() + " uploaded! " + files.size()); //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(mpf.getOriginalFilename()); fileMeta.setFileSize(mpf.getSize() / 1024 + " Kb"); fileMeta.setFileType(mpf.getContentType()); try { fileMeta.setBytes(mpf.getBytes()); File folder = new File("D:\\GitHub\\Harmony\\Harmony\\Web\\src\\main\\webapp\\resources\\files"); FileUtils.forceMkdir(folder); FileCopyUtils.copy(mpf.getBytes(), new FileOutputStream(new File(folder, mpf.getOriginalFilename()))); } 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"},...] return files; }
From source file:com.qcadoo.model.internal.file.FileServiceImpl.java
@Override public String upload(final MultipartFile multipartFile) throws IOException { File file = getFileFromFilenameWithRandomDirectory(multipartFile.getOriginalFilename()); OutputStream output = null;/*from w ww.j a v a 2 s . c o m*/ try { output = new FileOutputStream(file); IOUtils.copy(multipartFile.getInputStream(), output); } catch (IOException e) { LOG.error(e.getMessage(), e); IOUtils.closeQuietly(output); throw e; } return file.getAbsolutePath(); }
From source file:it.polimi.diceH2020.launcher.controller.rest.RestFilesController.java
@RequestMapping(value = "/upload", method = RequestMethod.POST) public ResponseEntity<BaseResponseBody> multipleSave(@RequestParam("file[]") List<MultipartFile> files, @RequestParam("scenario") String scenarioStringRepresentation) { BaseResponseBody body = new BaseResponseBody(); PendingSubmission submission = new PendingSubmission(); Scenario scenario = Scenario.generateScenario(scenarioStringRepresentation); body.setScenario(scenario);/* w w w. ja v a2s. co m*/ submission.setScenario(scenario); body.setAcceptedFiles(new LinkedList<>()); ResponseEntity<BaseResponseBody> response = new ResponseEntity<>(body, HttpStatus.INTERNAL_SERVER_ERROR); boolean good_status = true; List<String> additionalFileNames = new LinkedList<>(); List<File> allSavedFiles = new LinkedList<>(); if (files == null || files.isEmpty()) { String message = "No files to process!"; logger.error(message); body.setMessage(message); response = new ResponseEntity<>(body, HttpStatus.BAD_REQUEST); good_status = false; } else { Iterator<MultipartFile> multipartFileIterator = files.iterator(); while (good_status && multipartFileIterator.hasNext()) { MultipartFile multipartFile = multipartFileIterator.next(); String fileName = new File(multipartFile.getOriginalFilename()).getName(); logger.trace("Analyzing file " + fileName); File savedFile = null; try { savedFile = saveFile(multipartFile, fileName); allSavedFiles.add(savedFile); } catch (FileNameClashException e) { String message = String.format("'%s' already exists", fileName); logger.error(message, e); body.setMessage(message); response = new ResponseEntity<>(body, HttpStatus.BAD_REQUEST); good_status = false; } catch (IOException e) { String message = String.format("Error handling '%s'", fileName); logger.error(message, e); body.setMessage(message); response = new ResponseEntity<>(body, HttpStatus.INTERNAL_SERVER_ERROR); good_status = false; } if (good_status) { if (fileName.contains(".json")) { Optional<InstanceDataMultiProvider> idmp = validator .readInstanceDataMultiProvider(savedFile.toPath()); if (idmp.isPresent()) { if (idmp.get().validate()) { submission.setInstanceData(savedFile.getPath()); body.getAcceptedFiles().add(savedFile.getName()); } else { logger.error(idmp.get().getValidationError()); body.setMessage(idmp.get().getValidationError()); response = new ResponseEntity<>(body, HttpStatus.BAD_REQUEST); good_status = false; } } else { String message = "You have submitted an invalid json!"; logger.error(message); body.setMessage(message); response = new ResponseEntity<>(body, HttpStatus.BAD_REQUEST); good_status = false; } } else if (fileName.contains(".txt") || fileName.contains(".jsimg") || fileName.contains(".def") || fileName.contains(".net") || fileName.contains(".stat")) { additionalFileNames.add(savedFile.getPath()); body.getAcceptedFiles().add(savedFile.getName()); } } } } if (good_status) { body.setMessage("Successful file upload"); submission.setPaths(additionalFileNames); diceService.updateSubmission(submission); body.setSubmissionId(submission.getId()); Link submissionLink = ControllerLinkBuilder.linkTo(ControllerLinkBuilder .methodOn(RestLaunchAnalysisController.class).submitById(submission.getId())).withRel("submit"); body.add(submissionLink); logger.info(body); response = new ResponseEntity<>(body, HttpStatus.OK); } else { if (fileUtility.delete(allSavedFiles)) { logger.debug("Deleted the files created during a failed submission"); } } return response; }
From source file:org.openlmis.fulfillment.service.TemplateServiceTest.java
@Test public void shouldThrowErrorIfDisplayNameOfParameterIsMissing() throws Exception { expectedException.expect(ReportingException.class); expectedException.expect(hasProperty("params", arrayContaining("displayName"))); expectedException.expectMessage(REPORTING_PARAMETER_MISSING); MultipartFile file = mock(MultipartFile.class); when(file.getOriginalFilename()).thenReturn(NAME_OF_FILE); mockStatic(JasperCompileManager.class); JasperReport report = mock(JasperReport.class); InputStream inputStream = mock(InputStream.class); when(file.getInputStream()).thenReturn(inputStream); JRParameter param1 = mock(JRParameter.class); JRParameter param2 = mock(JRParameter.class); JRPropertiesMap propertiesMap = mock(JRPropertiesMap.class); when(report.getParameters()).thenReturn(new JRParameter[] { param1, param2 }); when(JasperCompileManager.compileReport(inputStream)).thenReturn(report); when(param1.getPropertiesMap()).thenReturn(propertiesMap); String[] propertyNames = { "name1" }; when(propertiesMap.getPropertyNames()).thenReturn(propertyNames); when(propertiesMap.getProperty(DISPLAY_NAME)).thenReturn(null); Template template = new Template(); templateService.validateFileAndInsertTemplate(template, file); verify(templateService, never()).saveWithParameters(template); }
From source file:com.emergya.persistenceGeo.web.RestResourcesController.java
/** * Obtain a resource from a multipart file * /* ww w . ja v a 2 s .c om*/ * @param file * @param resourceId * * @return resource */ private ResourceDto multipartFileToResource(MultipartFile file, Long resourceId) { // ResourceDto resource = new ResourceDto(); // simple properties resource.setName(file.getOriginalFilename()); resource.setSize(file.getSize()); resource.setType(file.getContentType()); resource.setAccessId(resourceId); // obtain data byte[] data; String extension = "png"; if (resource.getType() != null) { if (resource.getType().split("/").length > 0) { extension = resource.getType().split("/")[resource.getType().split("/").length - 1]; } else { extension = resource.getType(); } } try { data = IOUtils.toByteArray(file.getInputStream()); File temp = com.emergya.persistenceGeo.utils.FileUtils.createFileTemp(resource.getName(), extension); org.apache.commons.io.FileUtils.writeByteArrayToFile(temp, data); resource.setData(temp); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } return resource; }
From source file:eea.eprtr.cms.controller.FileOpsController.java
private String storeFile(MultipartFile myFile) throws IOException { String fileName = storageService.save(myFile, "docs"); String userName = getUserName(); logger.info("Uploaded: " + myFile.getOriginalFilename() + " by " + userName); return fileName; }
From source file:com.glaf.activiti.web.springmvc.ActivitiDeployController.java
/** * /*from w w w . j a va2 s.c o m*/ * @param model * @param mFile * @return * @throws IOException */ @RequestMapping(method = RequestMethod.POST) public String processSubmit(Model model, @RequestParam("file") MultipartFile mFile) throws IOException { if (!mFile.isEmpty()) { String deploymentId = null; ProcessDefinition processDefinition = null; if (mFile.getOriginalFilename().endsWith(".zip") || mFile.getOriginalFilename().endsWith(".jar")) { ZipInputStream zipInputStream = null; try { zipInputStream = new ZipInputStream(mFile.getInputStream()); deploymentId = activitiDeployService.addZipInputStream(zipInputStream).getId(); } finally { IOUtils.closeStream(zipInputStream); } } else { String resourceName = FileUtils.getFilename(mFile.getOriginalFilename()); deploymentId = activitiDeployService.addInputStream(resourceName, mFile.getInputStream()).getId(); } if (StringUtils.isNotEmpty(deploymentId)) { logger.debug("deploymentId:" + deploymentId); processDefinition = activitiProcessQueryService.getProcessDefinitionByDeploymentId(deploymentId); if (processDefinition != null) { model.addAttribute("processDefinition", processDefinition); model.addAttribute("deploymentId", processDefinition.getDeploymentId()); String resourceName = processDefinition.getDiagramResourceName(); if (resourceName != null) { ProcessUtils.saveProcessImageToFileSystem(processDefinition); String path = "/deploy/bpmn/" + ProcessUtils.getImagePath(processDefinition); model.addAttribute("path", path); return "/activiti/deploy/showImage"; } } } } String view = ViewProperties.getString("activiti.deploy"); if (StringUtils.isNotEmpty(view)) { return view; } return "/activiti/deploy/deploy"; }
From source file:csns.util.FileIO.java
public File save(MultipartFile uploadedFile, User user, File parent, boolean isPublic) { if (uploadedFile.isEmpty()) return null; File file = new File(); file.setName(uploadedFile.getOriginalFilename()); file.setType(uploadedFile.getContentType()); file.setSize(uploadedFile.getSize()); file.setOwner(user);//from w ww . j a v a 2 s . c o m file.setParent(parent); file.setPublic(isPublic); file = fileDao.saveFile(file); java.io.File diskFile = getDiskFile(file, false); try { uploadedFile.transferTo(diskFile); } catch (Exception e) { logger.error("Failed to save uploaded file", e); } return file; }