List of usage examples for org.springframework.web.multipart MultipartFile getInputStream
@Override
InputStream getInputStream() throws IOException;
From source file:org.activiti.app.rest.editor.AbstractModelsResource.java
public ModelRepresentation importProcessModel(HttpServletRequest request, MultipartFile file) { String fileName = file.getOriginalFilename(); if (fileName != null && (fileName.endsWith(".bpmn") || fileName.endsWith(".bpmn20.xml"))) { try {//from ww w . ja v a2s . c o m XMLInputFactory xif = XmlUtil.createSafeXmlInputFactory(); InputStreamReader xmlIn = new InputStreamReader(file.getInputStream(), "UTF-8"); XMLStreamReader xtr = xif.createXMLStreamReader(xmlIn); BpmnModel bpmnModel = bpmnXmlConverter.convertToBpmnModel(xtr); if (CollectionUtils.isEmpty(bpmnModel.getProcesses())) { throw new BadRequestException("No process found in definition " + fileName); } if (bpmnModel.getLocationMap().size() == 0) { BpmnAutoLayout bpmnLayout = new BpmnAutoLayout(bpmnModel); bpmnLayout.execute(); } ObjectNode modelNode = bpmnJsonConverter.convertToJson(bpmnModel); org.activiti.bpmn.model.Process process = bpmnModel.getMainProcess(); String name = process.getId(); if (StringUtils.isNotEmpty(process.getName())) { name = process.getName(); } String description = process.getDocumentation(); ModelRepresentation model = new ModelRepresentation(); model.setKey(process.getId()); model.setName(name); model.setDescription(description); model.setModelType(AbstractModel.MODEL_TYPE_BPMN); Model newModel = modelService.createModel(model, modelNode.toString(), SecurityUtils.getCurrentUserObject()); return new ModelRepresentation(newModel); } catch (BadRequestException e) { throw e; } catch (Exception e) { logger.error("Import failed for " + fileName, e); throw new BadRequestException( "Import failed for " + fileName + ", error message " + e.getMessage()); } } else { throw new BadRequestException( "Invalid file name, only .bpmn and .bpmn20.xml files are supported not " + fileName); } }
From source file:com.vsquaresystem.safedeals.location.LocationService.java
@Transactional(readOnly = false) public Boolean insertAttachments(MultipartFile attachmentMultipartFile) throws JsonProcessingException, IOException { logger.info("attachmentMultipartFile in service Line31{}", attachmentMultipartFile); System.out.println("attachmentMultipartFile" + attachmentMultipartFile); File outputFile = attachmentUtils.storeAttachmentByAttachmentType( attachmentMultipartFile.getOriginalFilename(), attachmentMultipartFile.getInputStream(), AttachmentUtils.AttachmentType.LOCATION); return outputFile.exists(); }
From source file:net.solarnetwork.node.setup.web.NodeAssociationController.java
@RequestMapping(value = "/importBackup", method = RequestMethod.POST) public String importBackup(@RequestParam("file") MultipartFile file, HttpServletRequest request) throws IOException { final BackupManager manager = backupManagerTracker.service(); if (manager == null) { request.getSession(true).setAttribute("errorMessageKey", "node.setup.restore.error.noBackupManager"); } else {/*from ww w . j a va 2 s. c o m*/ try { manager.importBackupArchive(file.getInputStream()); request.getSession(true).setAttribute("statusMessageKey", "node.setup.restore.success"); } catch (Exception e) { log.error("Exception restoring backup archive", e); Throwable root = e; while (root.getCause() != null) { root = root.getCause(); } request.getSession(true).setAttribute("errorMessageKey", "node.setup.restore.error.unknown"); request.getSession(true).setAttribute("errorMessageParam0", root.getMessage()); } } return "redirect:/associate"; }
From source file:com.ar.dev.tierra.api.controller.UsuariosController.java
@RequestMapping(value = "/updatePhoto", method = RequestMethod.POST) public @ResponseBody ResponseEntity<?> updateUsuario(@RequestParam("file") MultipartFile file, OAuth2Authentication authentication) { try {/* w w w . j a v a 2 s . c om*/ User user = (User) authentication.getPrincipal(); Usuarios u = facadeService.getUsuariosDAO().findUsuarioByUsername(user.getUsername()); if (file.getName().isEmpty() == false) { InputStream inputStream = file.getInputStream(); ByteArrayOutputStream buffer = new ByteArrayOutputStream(); int nRead; byte[] bytes = new byte[16384]; while ((nRead = inputStream.read(bytes, 0, bytes.length)) != -1) { buffer.write(bytes, 0, nRead); } buffer.flush(); u.setImagen(buffer.toByteArray()); facadeService.getUsuariosDAO().updateUsuario(u); } } catch (Exception e) { return new ResponseEntity<>(HttpStatus.BAD_REQUEST); } return new ResponseEntity<>(HttpStatus.OK); }
From source file:org.magnum.dataup.MyVideoController.java
@RequestMapping(value = "/video/{id}/data", method = RequestMethod.POST) public @ResponseBody VideoStatus setVideoData(@PathVariable("id") long id, @RequestParam("data") MultipartFile videoData, HttpServletResponse response) { if (id == 0 || videoData == null) { response.setStatus(404);//ww w . j a va 2 s .com return (new VideoStatus(VideoState.READY)); } Video v = videos.get(id); if (v == null) { response.setStatus(404); return (new VideoStatus(VideoState.READY)); } try { VideoFileManager vfm = VideoFileManager.get(); vfm.saveVideoData(v, videoData.getInputStream()); } catch (Exception e) { e.printStackTrace(); } return (new VideoStatus(VideoState.READY)); }
From source file:com.dlshouwen.tdjs.video.controller.TdjsVideoController.java
/** * //from w ww .j ava 2 s . c om * * @param request * @return * @throws Exception */ @RequestMapping(value = "/upload", method = RequestMethod.POST) @ResponseBody public AjaxResponse uploadVideo(HttpServletRequest request, HttpServletResponse response) throws Exception { String path = ""; String videoTime = ""; String coverPath = ""; MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request; MultipartFile multipartFile = multipartRequest.getFile("file"); String fileName = multipartFile.getOriginalFilename(); if (multipartFile != null && StringUtils.isNotEmpty(fileName)) { JSONObject jobj = FileUploadClient.upFile(request, fileName, multipartFile.getInputStream()); if (jobj != null && jobj.getString("responseMessage").equals("OK")) { path = jobj.getString("fpath"); // videoTime = jobj.getString("videoTime"); coverPath = jobj.getString("videoCoverPath"); } } WebUtil.addCookie(request, response, "videoPath", path, -1); WebUtil.addCookie(request, response, "videoTime", videoTime, -1); WebUtil.addCookie(request, response, "coverPath", coverPath, -1); // ? AjaxResponse ajaxResponse = new AjaxResponse(); ajaxResponse.setSuccess(true); ajaxResponse.setSuccessMessage("???"); // ? LogUtils.updateOperationLog(request, OperationType.UPDATE, "??" + fileName); return ajaxResponse; }
From source file:ru.mystamps.web.validation.jsr303.ImageFileValidator.java
@Override @SuppressWarnings("PMD.CyclomaticComplexity") public boolean isValid(MultipartFile file, ConstraintValidatorContext ctx) { if (file == null) { return true; }//from ww w . j a v a2 s . c om if (file.isEmpty()) { return false; } String contentType = file.getContentType(); if (!PNG_CONTENT_TYPE.equals(contentType) && !JPEG_CONTENT_TYPE.equals(file.getContentType())) { LOG.debug("Reject file with content type '{}'", contentType); return false; } try (InputStream stream = file.getInputStream()) { byte[] firstPart = readFourBytes(stream); if (firstPart == null) { LOG.warn("Failed to read 4 bytes from file"); return false; } if (isJpeg(firstPart)) { return true; } if (doesItLookLikePng(firstPart)) { byte[] secondPart = readFourBytes(stream); if (isItReallyPng(secondPart)) { return true; } LOG.debug("Looks like file isn't a PNG image. First bytes: {} {}", formatBytes(firstPart), formatBytes(secondPart)); return false; } LOG.debug("Looks like file isn't an image. First bytes: {}", formatBytes(firstPart)); return false; } catch (IOException e) { LOG.warn("Error during file type validation: {}", e.getMessage()); return false; } }
From source file:org.flowable.ui.modeler.service.FlowableModelQueryService.java
public ModelRepresentation importCaseModel(HttpServletRequest request, MultipartFile file) { String fileName = file.getOriginalFilename(); if (fileName != null && (fileName.endsWith(".cmmn") || fileName.endsWith(".cmmn.xml"))) { try {// ww w . j a va 2 s . c om XMLInputFactory xif = XmlUtil.createSafeXmlInputFactory(); InputStreamReader xmlIn = new InputStreamReader(file.getInputStream(), "UTF-8"); XMLStreamReader xtr = xif.createXMLStreamReader(xmlIn); CmmnModel cmmnModel = cmmnXmlConverter.convertToCmmnModel(xtr); if (CollectionUtils.isEmpty(cmmnModel.getCases())) { throw new BadRequestException("No cases found in definition " + fileName); } if (cmmnModel.getLocationMap().size() == 0) { throw new BadRequestException("No CMMN DI found in definition " + fileName); } ObjectNode modelNode = cmmnJsonConverter.convertToJson(cmmnModel); Case caseModel = cmmnModel.getPrimaryCase(); String name = caseModel.getId(); if (StringUtils.isNotEmpty(caseModel.getName())) { name = caseModel.getName(); } String description = caseModel.getDocumentation(); ModelRepresentation model = new ModelRepresentation(); model.setKey(caseModel.getId()); model.setName(name); model.setDescription(description); model.setModelType(AbstractModel.MODEL_TYPE_CMMN); Model newModel = modelService.createModel(model, modelNode.toString(), SecurityUtils.getCurrentUserObject()); return new ModelRepresentation(newModel); } catch (BadRequestException e) { throw e; } catch (Exception e) { LOGGER.error("Import failed for {}", fileName, e); throw new BadRequestException( "Import failed for " + fileName + ", error message " + e.getMessage()); } } else { throw new BadRequestException( "Invalid file name, only .cmmn and .cmmn.xml files are supported not " + fileName); } }
From source file:org.flowable.ui.modeler.service.FlowableModelQueryService.java
public ModelRepresentation importProcessModel(HttpServletRequest request, MultipartFile file) { String fileName = file.getOriginalFilename(); if (fileName != null && (fileName.endsWith(".bpmn") || fileName.endsWith(".bpmn20.xml"))) { try {/*from w ww .ja v a 2 s.co m*/ XMLInputFactory xif = XmlUtil.createSafeXmlInputFactory(); InputStreamReader xmlIn = new InputStreamReader(file.getInputStream(), "UTF-8"); XMLStreamReader xtr = xif.createXMLStreamReader(xmlIn); BpmnModel bpmnModel = bpmnXmlConverter.convertToBpmnModel(xtr); if (CollectionUtils.isEmpty(bpmnModel.getProcesses())) { throw new BadRequestException("No process found in definition " + fileName); } if (bpmnModel.getLocationMap().size() == 0) { BpmnAutoLayout bpmnLayout = new BpmnAutoLayout(bpmnModel); bpmnLayout.execute(); } ObjectNode modelNode = bpmnJsonConverter.convertToJson(bpmnModel); org.flowable.bpmn.model.Process process = bpmnModel.getMainProcess(); String name = process.getId(); if (StringUtils.isNotEmpty(process.getName())) { name = process.getName(); } String description = process.getDocumentation(); ModelRepresentation model = new ModelRepresentation(); model.setKey(process.getId()); model.setName(name); model.setDescription(description); model.setModelType(AbstractModel.MODEL_TYPE_BPMN); Model newModel = modelService.createModel(model, modelNode.toString(), SecurityUtils.getCurrentUserObject()); return new ModelRepresentation(newModel); } catch (BadRequestException e) { throw e; } catch (Exception e) { LOGGER.error("Import failed for {}", fileName, e); throw new BadRequestException( "Import failed for " + fileName + ", error message " + e.getMessage()); } } else { throw new BadRequestException( "Invalid file name, only .bpmn and .bpmn20.xml files are supported not " + fileName); } }