List of usage examples for org.springframework.web.multipart MultipartFile getBytes
byte[] getBytes() throws IOException;
From source file:Controller.ProviderController.java
@RequestMapping(value = "/UploadImage", method = RequestMethod.POST) public @ResponseBody String uploadProviderImage(@RequestParam("providerImage") MultipartFile providerImage, @RequestParam("providerID") int providerID, HttpSession session) { try {//from w ww. ja va 2 s . c om String path = System.getProperty("catalina.base"); File folderPackage = new File(path + "/webapps/Images/Provider/" + providerID); if (!folderPackage.exists()) { folderPackage.mkdirs(); } String extension = FilenameUtils.getExtension(providerImage.getOriginalFilename()); String name = "provider." + extension; String name2 = "avatar." + extension; // get Bytes and crop byte[] imageInByte = providerImage.getBytes(); InputStream in = new ByteArrayInputStream(imageInByte); BufferedImage bImageFromConvert = ImageIO.read(in); // create a cropped image from the original image BufferedImage croppedImage = bImageFromConvert.getSubimage(0, 0, 100, 100); // // then convert BufferedImage to byte array to save // ByteArrayOutputStream baos = new ByteArrayOutputStream(); // ImageIO.write(croppedImage, extension, baos); // baos.flush(); // imageInByte = baos.toByteArray(); // baos.close(); ImageIO.write(croppedImage, extension, new File(folderPackage, name2)); FileCopyUtils.copy(providerImage.getBytes(), new FileOutputStream(new File(folderPackage, name))); String image = "Images/Provider/" + providerID + "/" + name; AccountSession account = (AccountSession) session.getAttribute("account"); account.setImage(image); session.setAttribute("account", account); providerService.updateProviderImage(providerID, image); return image; } catch (Exception e) { String content = "Function: ProviderController - uploadProviderImage\n" + "***Input***\n" + "providerID: " + providerID + "\n" + "**********\n" + "****Error****\n" + e.getMessage() + "\n" + "**********"; errorService.logBugWithAccount(content, session, e); return "{\"result\": \"error\"}"; } }
From source file:Implement.Service.ProviderServiceImpl.java
@Override public String updateProviderPassportImage(int providerID, MultipartFile providerImage) { String path = System.getProperty("catalina.base"); File folderPackage = new File(path + "/webapps/Images/Provider/" + providerID); if (!folderPackage.exists()) { folderPackage.mkdirs();//from www . j a v a 2 s. co m } String name = "passport." + FilenameUtils.getExtension(providerImage.getOriginalFilename()); try { FileCopyUtils.copy(providerImage.getBytes(), new FileOutputStream(new File(folderPackage, name))); } catch (IOException ex) { Logger.getLogger(ProviderServiceImpl.class.getName()).log(Level.SEVERE, null, ex); } String image = "Images/Provider/" + providerID + "/" + name; String uploadTime = String.valueOf(System.currentTimeMillis()); providerDAO.updateProviderPassportImage(providerID, image, uploadTime); return image; }
From source file:Controller.ProviderController.java
@RequestMapping(value = "/Package/uploadCoverImage", method = RequestMethod.POST) public @ResponseBody String uploadCoverImage(@RequestParam("coverImage") MultipartFile coverImage, @RequestParam("temporaryPackageID") int temporaryPackageID, HttpSession session) { try {// w w w. jav a2s . c o m String path = System.getProperty("catalina.base"); File folderPackage = new File(path + "/webapps/Images/TemporaryPackages/" + temporaryPackageID); if (!folderPackage.exists()) { folderPackage.mkdirs(); } // String name = "cover." + FilenameUtils.getExtension(coverImage.getOriginalFilename()); // FileOutputStream fos = new FileOutputStream(new File(folderPackage, name)); // fos.write(coverImage.getBytes()); // fos.close(); String name = "cover." + FilenameUtils.getExtension(coverImage.getOriginalFilename()); FileCopyUtils.copy(coverImage.getBytes(), new FileOutputStream(new File(folderPackage, name))); // get data from image String fileName = coverImage.getOriginalFilename(); String fileType = coverImage.getContentType(); String fileSize = coverImage.getSize() / 1024 + " Kb"; byte[] imageInByte = coverImage.getBytes(); FileMeta metaFile = new FileMeta(fileName, fileSize, fileType, imageInByte); // save temporary Image to session session.setAttribute("coverPackageImage", metaFile); return "/Images/TemporaryPackages/" + temporaryPackageID + "/" + name; } catch (Exception e) { String content = "Function: ProviderController - uploadCoverImage\n" + "***Input***\n" + "temporaryPackageID: " + temporaryPackageID + "\n" + "**********\n" + "****Error****\n" + e.getMessage() + "\n" + "**********"; errorService.logBugWithAccount(content, session, e); return "{\"result\": \"error\"}"; } }
From source file:Controller.ProviderController.java
@RequestMapping(value = "/UploadUpdateCertificateImage", method = RequestMethod.POST) public @ResponseBody String uploadUpdateCertificateImage( @RequestParam("certificateImage") MultipartFile certificateImage, @RequestParam("providerID") int providerID, @RequestParam("certificateID") int certificateID, HttpSession session) {// w w w . j a v a 2 s . co m CertificatesViewDTO getDTO; String url; try { String path = System.getProperty("catalina.base"); File folderPackage = new File(path + "/webapps/Images/Provider/" + providerID + "/Certificate/"); if (!folderPackage.exists()) { folderPackage.mkdirs(); } getDTO = providerService.getCertificateURL(certificateID); url = getDTO.getImage(); String name = url.substring(url.lastIndexOf("/") + 1); //String name = "4K88AE3SU58A" + "." + FilenameUtils.getExtension(certificateImage.getOriginalFilename()); FileCopyUtils.copy(certificateImage.getBytes(), new FileOutputStream(new File(folderPackage, name))); String image = "/Images/Provider/" + providerID + "/Certificate/" + name; // providerService.updateCertificateImage(certificateID, image); boolean status = providerService.updateCertificateUpdate(certificateID); if (status) { return image; } else { return "{\"result\": \"error\"}"; } } catch (Exception e) { String content = "Function: ProviderController - uploadUpdateCertificateImage\n" + "***Input***\n" + "providerID: " + providerID + "\n" + "**********\n" + "****Error****\n" + e.getMessage() + "\n" + "**********"; errorService.logBugWithAccount(content, session, e); return "{\"result\": \"error\"}"; } }
From source file:com.siblinks.ws.service.impl.UserServiceImpl.java
/** * {@inheritDoc}/*from w ww . j a v a 2 s. c o m*/ */ @Override @RequestMapping(value = "/uploadAvatar", method = RequestMethod.POST) @ResponseBody public ResponseEntity<Response> uploadAvatar(@RequestParam("uploadfile") final MultipartFile uploadfile, @RequestParam(value = "userid") final String userid, @RequestParam("imageUrl") final String oldNameImgAvatar) throws IOException { String filename = ""; String name = ""; String filepath = ""; BufferedOutputStream stream = null; SimpleResponse response = null; try { String directory = environment.getProperty("directoryAvatar"); String service = environment.getProperty("directoryGetAvatar"); String strExtenstionFile = environment.getProperty("file.upload.image.type"); name = uploadfile.getOriginalFilename(); String nameExt = FilenameUtils.getExtension(name); boolean status = strExtenstionFile.contains(nameExt.toLowerCase()); if (directory != null && status) { RandomString randomName = new RandomString(); filename = randomName.random() + "." + "png"; filepath = "" + Paths.get(directory, filename); // Save the file locally File file = new File(filepath); File parentDir = file.getParentFile(); if (!parentDir.exists()) { parentDir.mkdirs(); } stream = new BufferedOutputStream(new FileOutputStream(file)); stream.write(uploadfile.getBytes()); Object[] queryParams = { service + filename, userid }; dao.insertUpdateObject(SibConstants.SqlMapper.SQL_UPDATE_AVARTAR_USER, queryParams); boolean insertUpdateObject = dao.insertUpdateObject(SibConstants.SqlMapper.SQL_UPDATE_AVARTAR_USER, queryParams); // Remove image avatar old if (insertUpdateObject && oldNameImgAvatar != null && !"".equals(oldNameImgAvatar)) { String fileName = oldNameImgAvatar.substring(oldNameImgAvatar.lastIndexOf("/"), oldNameImgAvatar.length()); File fileOld = new File(directory + fileName); if (fileOld.exists()) { FileUtils.forceDeleteOnExit(fileOld); } activityLogService.insertActivityLog(new ActivityLogData(SibConstants.TYPE_PROFILE, "U", "You updated your avatar", userid, null)); } // Successful return path image avatar response = new SimpleResponse(SibConstants.SUCCESS, service + filename); } else { response = new SimpleResponse(SibConstants.FAILURE, "Not found path or file is not exist"); } } catch (Exception e) { response = new SimpleResponse(SibConstants.FAILURE, "Upload avatar error"); logger.debug("Upload avartar error " + e.getMessage()); } finally { try { if (stream != null) { stream.close(); } } catch (IOException io) { // Do Nothing } } return new ResponseEntity<Response>(response, HttpStatus.OK); }
From source file:Implement.Service.ProviderServiceImpl.java
@Override public String uploadAdditionalImagesPackage(MultipartFile[] additionalImages, int packageID, String imagesJson) throws IOException { List<AdditionImageDTO> images; List<AdditionImageDTO> images2 = new ArrayList<AdditionImageDTO>(); Type listType = new TypeToken<List<AdditionImageDTO>>() { }.getType();/*from w w w . j a va 2s . co m*/ images = gson.fromJson(imagesJson, listType); String path = System.getProperty("catalina.base"); File folderPackage = new File(path + "/webapps/Images/PrimaryPackages/" + packageID); if (!folderPackage.exists()) { folderPackage.mkdirs(); } // int maximumNumber = images.getMaximumNumber(); for (MultipartFile additionalImage : additionalImages) { int randomNum = 1000 + (int) (Math.random() * 9999); boolean checkExist = checkImageExist(String.valueOf(randomNum), packageID); while (checkExist == true) { randomNum = 1000 + (int) (Math.random() * 9999); checkExist = checkImageExist(String.valueOf(randomNum), packageID); } String name = String.valueOf(randomNum) + "." + FilenameUtils.getExtension(additionalImage.getOriginalFilename()); FileCopyUtils.copy(additionalImage.getBytes(), new FileOutputStream(new File(folderPackage, name))); AdditionImageDTO additionalImageClass = new AdditionImageDTO( "/Images/PrimaryPackages/" + packageID + "/" + name, ""); images.add(additionalImageClass); images2.add(additionalImageClass); } // images.setMaximumNumber(maximumNumber); imagesJson = gson.toJson(images2); updateAdditionImagePackage(packageID, images2); return imagesJson; }
From source file:Implement.Service.ProviderServiceImpl.java
@Override public String uploadAdditionalImagesv2(MultipartFile[] additionalImages, int temporaryPackageID, String imagesJson) throws IOException { List<AdditionImageDTO> images; List<AdditionImageDTO> images2 = new ArrayList<AdditionImageDTO>(); Type listType = new TypeToken<List<AdditionImageDTO>>() { }.getType();/*from ww w . ja va 2s . c o m*/ images = gson.fromJson(imagesJson, listType); String path = System.getProperty("catalina.base"); File folderPackage = new File(path + "/webapps/Imagesv2/" + temporaryPackageID); if (!folderPackage.exists()) { folderPackage.mkdirs(); } // int maximumNumber = images.getMaximumNumber(); for (MultipartFile additionalImage : additionalImages) { int randomNum = 1000 + (int) (Math.random() * 9999); boolean checkExist = checkImageExist(String.valueOf(randomNum), temporaryPackageID); while (checkExist == true) { randomNum = 1000 + (int) (Math.random() * 9999); checkExist = checkImageExist(String.valueOf(randomNum), temporaryPackageID); } String name = String.valueOf(randomNum) + "." + FilenameUtils.getExtension(additionalImage.getOriginalFilename()); FileCopyUtils.copy(additionalImage.getBytes(), new FileOutputStream(new File(folderPackage, name))); AdditionImageDTO additionalImageClass = new AdditionImageDTO( "/Imagesv2/" + temporaryPackageID + "/" + name, ""); images.add(additionalImageClass); images2.add(additionalImageClass); } // images.setMaximumNumber(maximumNumber); imagesJson = gson.toJson(images2); updateAdditionImagev2(temporaryPackageID, images2); return imagesJson; }
From source file:Implement.Service.ProviderServiceImpl.java
@Override public String uploadAdditionalImages(MultipartFile[] additionalImages, int temporaryPackageID, String imagesJson) throws IOException { List<AdditionImageDTO> images; List<AdditionImageDTO> images2 = new ArrayList<AdditionImageDTO>(); Type listType = new TypeToken<List<AdditionImageDTO>>() { }.getType();/*from w w w.j a v a2 s.c o m*/ images = gson.fromJson(imagesJson, listType); String path = System.getProperty("catalina.base"); File folderPackage = new File(path + "/webapps/Images/TemporaryPackages/" + temporaryPackageID); if (!folderPackage.exists()) { folderPackage.mkdirs(); } // int maximumNumber = images.getMaximumNumber(); for (MultipartFile additionalImage : additionalImages) { int randomNum = 1000 + (int) (Math.random() * 9999); boolean checkExist = checkImageExist(String.valueOf(randomNum), temporaryPackageID); while (checkExist == true) { randomNum = 1000 + (int) (Math.random() * 9999); checkExist = checkImageExist(String.valueOf(randomNum), temporaryPackageID); } String name = String.valueOf(randomNum) + "." + FilenameUtils.getExtension(additionalImage.getOriginalFilename()); FileCopyUtils.copy(additionalImage.getBytes(), new FileOutputStream(new File(folderPackage, name))); AdditionImageDTO additionalImageClass = new AdditionImageDTO( "/Images/TemporaryPackages/" + temporaryPackageID + "/" + name, ""); images.add(additionalImageClass); images2.add(additionalImageClass); } // images.setMaximumNumber(maximumNumber); imagesJson = gson.toJson(images2); updateAdditionImage(temporaryPackageID, images2); return imagesJson; }
From source file:fr.mby.opa.pics.web.controller.UploadPicturesController.java
/*************************************************** * URL: /upload/jqueryUpload upload(): receives files * // w w w . j a v a 2 s .co m * @param request * : MultipartHttpServletRequest auto passed * @param response * : HttpServletResponse auto passed * @return LinkedList<FileMeta> as json format ****************************************************/ @ResponseBody @RequestMapping(value = "/jqueryUpload", method = RequestMethod.POST) public FileMetaList jqueryUpload(@RequestParam final Long albumId, final MultipartHttpServletRequest request, final HttpServletResponse response) throws Exception { Assert.notNull(albumId, "No Album Id supplied !"); final FileMetaList files = new FileMetaList(); // 1. build an iterator final Iterator<String> itr = request.getFileNames(); // 2. get each file while (itr.hasNext()) { // 2.1 get next MultipartFile final MultipartFile mpf = request.getFile(itr.next()); // Here the file is uploaded final String originalFilename = mpf.getOriginalFilename(); final String contentType = mpf.getContentType(); final Matcher zipMatcher = UploadPicturesController.ZIP_CONTENT_TYPE_PATTERN.matcher(contentType); if (zipMatcher.find()) { // 2.3 create new fileMeta final FileMeta zipMeta = new FileMeta(); zipMeta.setFileName(originalFilename); zipMeta.setFileSize(mpf.getSize() / 1024 + " Kb"); zipMeta.setFileType(mpf.getContentType()); final List<Path> picturesPaths = this.processArchive(mpf); final Collection<Future<Void>> futures = new ArrayList<>(picturesPaths.size()); final ExecutorService executorService = Executors .newFixedThreadPool(Runtime.getRuntime().availableProcessors()); for (final Path picturePath : picturesPaths) { final Future<Void> future = executorService.submit(new Callable<Void>() { @Override public Void call() throws Exception { final String pictureFileName = picturePath.getName(picturePath.getNameCount() - 1) .toString(); final byte[] pictureContents = Files.readAllBytes(picturePath); final FileMeta pictureMeta = new FileMeta(); try { final Picture picture = UploadPicturesController.this.createPicture(albumId, pictureFileName.toString(), pictureContents); final Long imageId = picture.getImage().getId(); final Long thumbnailId = picture.getThumbnail().getId(); pictureMeta.setFileName(pictureFileName); pictureMeta.setFileSize(pictureContents.length / 1024 + " Kb"); pictureMeta.setFileType(Files.probeContentType(picturePath)); pictureMeta.setUrl( response.encodeURL(ImageController.IMAGE_CONTROLLER_PATH + "/" + imageId)); pictureMeta.setThumbnailUrl(response .encodeURL(ImageController.IMAGE_CONTROLLER_PATH + "/" + thumbnailId)); } catch (final PictureAlreadyExistsException e) { // Picture already exists ! pictureMeta.setError( UploadPicturesController.PICTURE_ALREADY_EXISTS_MSG + e.getFilename()); } catch (final UnsupportedPictureTypeException e) { // Picture already exists ! pictureMeta.setError( UploadPicturesController.UNSUPPORTED_PICTURE_TYPE_MSG + e.getFilename()); } files.add(pictureMeta); return null; } }); futures.add(future); } for (final Future<Void> future : futures) { future.get(); } files.add(zipMeta); } final Matcher imgMatcher = UploadPicturesController.IMG_CONTENT_TYPE_PATTERN.matcher(contentType); if (imgMatcher.find()) { // 2.3 create new fileMeta final FileMeta fileMeta = new FileMeta(); try { final byte[] fileContents = mpf.getBytes(); final Picture picture = this.createPicture(albumId, originalFilename, fileContents); final Long imageId = picture.getImage().getId(); final Long thumbnailId = picture.getThumbnail().getId(); fileMeta.setFileName(originalFilename); fileMeta.setFileSize(mpf.getSize() / 1024 + " Kb"); fileMeta.setFileType(mpf.getContentType()); fileMeta.setBytes(fileContents); fileMeta.setUrl(response.encodeURL(ImageController.IMAGE_CONTROLLER_PATH + "/" + imageId)); fileMeta.setThumbnailUrl( response.encodeURL(ImageController.IMAGE_CONTROLLER_PATH + "/" + thumbnailId)); // 2.4 add to files files.add(fileMeta); } catch (final PictureAlreadyExistsException e) { // Picture already exists ! fileMeta.setError(UploadPicturesController.PICTURE_ALREADY_EXISTS_MSG); } } } // result will be like this // {files:[{"fileName":"app_engine-85x77.png","fileSize":"8 Kb","fileType":"image/png"},...]} return files; }