Example usage for org.springframework.web.multipart MultipartFile getBytes

List of usage examples for org.springframework.web.multipart MultipartFile getBytes

Introduction

In this page you can find the example usage for org.springframework.web.multipart MultipartFile getBytes.

Prototype

byte[] getBytes() throws IOException;

Source Link

Document

Return the contents of the file as an array of bytes.

Usage

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;
}