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:com.siblinks.ws.service.impl.CommentServiceImpl.java

/**
 * {@inheritDoc}//from   w ww  .ja v a 2s .  c  o m
 */
public String uploadFile(final MultipartFile uploadfile, final String path) throws FileNotFoundException {

    String filename = "";
    String name;
    String filepath = "";
    BufferedOutputStream stream = null;
    try {
        String directory = environment.getProperty(path);
        String sample = ".png .jpng .jpg .bmp";
        name = uploadfile.getOriginalFilename();
        String nameExt = FilenameUtils.getExtension(name);
        boolean status = sample.contains(nameExt);
        if (directory != null && status) {
            RandomString randomName = new RandomString();
            filename = randomName.random();
            filepath = Paths.get(directory, filename + "." + nameExt).toString();
            // 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());

        }
    } catch (Exception e) {
        e.printStackTrace();
    } finally {
        try {
            if (stream != null) {
                stream.close();
            }
        } catch (IOException io) {
            // Do nothing
        }
    }

    return filename;
}

From source file:org.shareok.data.webserv.JournalDataController.java

@RequestMapping(value = "/dspace/safpackage/doi/generate", method = RequestMethod.POST)
public ModelAndView safPackageGenerateByDois(HttpServletRequest request, RedirectAttributes redirectAttrs,
        @RequestParam(value = "multiDoiUploadFile", required = false) MultipartFile file) {
    String singleDoi = (String) request.getParameter("singleDoi");
    String multiDoi = (String) request.getParameter("multiDoi");
    String safPaths = null;/*from   www .  java2  s.  c o m*/
    ByteArrayInputStream stream = null;

    ModelAndView model = new ModelAndView();
    RedirectView view = new RedirectView();
    view.setContextRelative(true);

    if ((null != file && !file.isEmpty()) || null != singleDoi || null != multiDoi) {
        String safFilePath = null;
        try {
            String[] dois;
            if (null != singleDoi) {
                String doi = (String) request.getParameter("doiInput");
                if (null == doi || doi.equals("")) {
                    throw new EmptyDoiInformationException("Empty information from single DOI submission!");
                }
                dois = new String[] { doi };
            } else if (null != multiDoi) {
                String doi = (String) request.getParameter("multiDoiInput");
                if (null == doi || doi.equals("")) {
                    throw new EmptyDoiInformationException("Empty information from multiple DOI submission!");
                }
                dois = doi.trim().split("\\s*;\\s*");
            } else if (null != file && !file.isEmpty()) {
                stream = new ByteArrayInputStream(file.getBytes());
                String doiString = IOUtils.toString(stream, "UTF-8");
                dois = doiString.trim().split("\\s*\\r?\\n\\s*");
            } else {
                throw new EmptyDoiInformationException("Empty DOI information from unknown DOI submission!");
            }
            if (dois != null && dois.length > 0) {

            }
        } catch (Exception ex) {
            logger.error("Cannot generate the SAF packages by the DOIs", ex);
        } finally {
            if (null != stream) {
                try {
                    stream.close();
                } catch (IOException ex) {
                    logger.error("Cannot close the input stream when reading the file containing the DOIs", ex);
                }
            }
        }
        if (null != safFilePath && !safFilePath.equals("")) {
            redirectAttrs.addFlashAttribute("safFilePath", safFilePath);
            view.setUrl(".jsp");
            model.setView(view);
        } else {
            redirectAttrs.addFlashAttribute("errorMessage", "The saf file path is invalid");
            view.setUrl("journalDataUpload.jsp");
            model.setView(view);
        }
    } else {
        redirectAttrs.addFlashAttribute("errorMessage", "The server information is empty");
        view.setUrl("errors/serverError.jsp");
        model.setView(view);
    }
    return model;
}

From source file:uk.org.rbc1b.roms.controller.volunteer.VolunteersController.java

/**
 * Handles the volunteer image upload./*from  www .  ja v  a2  s.  c o m*/
 *
 * @param volunteerId id
 * @param imageFile file to be uploaded
 * @throws IOException if file cannot be written
 * @return view
 * volunteer
 */
@RequestMapping(value = "{volunteerId}/image", method = RequestMethod.POST)
@PreAuthorize("hasPermission('VOLUNTEER', 'EDIT')")
public String handleImageUpload(@PathVariable Integer volunteerId,
        @RequestParam(value = "image", required = true) MultipartFile imageFile) throws IOException {

    Volunteer volunteer = volunteerDao.findVolunteer(volunteerId, EnumSet.of(VolunteerData.INTERVIEWER));
    if (volunteer == null) {
        throw new ResourceNotFoundException("No volunteer #" + volunteerId + " found");
    }

    String filename = volunteerId + ".jpg";

    File file = new File(imageDirectories.getProperty(VOLUNTEER_IMAGE_DIRECTORY_KEY) + filename);
    FileUtils.writeByteArrayToFile(file, imageFile.getBytes());

    volunteer.setPhotoProvided(true);
    volunteerDao.updateVolunteer(volunteer);

    return "redirect:" + VolunteerModelFactory.generateUri(volunteerId);
}

From source file:com.virtusa.akura.student.controller.StudentDetailController.java

/**
 * @param student - Student obj./* w w w  .  j  ava 2  s. c o m*/
 * @param result - BindingResult.
 * @param session - HttpSession
 * @param model - a hashMap that contains student's data
 * @param request - represents an instance of HttpServletRequest
 * @throws AkuraAppException - AkuraAppException.
 * @return name of the view which is redirected to.
 */
@RequestMapping(REQ_MAP_SAVE_STUDENT_DETAIL)
public String onSubmit(@ModelAttribute(MODEL_ATT_STUDENT) Student student, BindingResult result,
        HttpSession session, HttpServletRequest request, ModelMap model) throws AkuraAppException {

    String returnResult = VIEW_GET_STUDENT_DETAIL_PAGE;
    studentDetailValidator.validate(student, result);
    String selectedCountryCodeRes = request.getParameter(SELECTED_COUNTRYCODE_RES);
    String selectedCountryCodeMob = request.getParameter(SELECTED_COUNTRYCODE_MOB);
    String selectedCountryCodeEmgRes = request.getParameter(SELECTED_COUNTRYCODE_EMG_RES);
    String selectedCountryCodeEmgMob = request.getParameter(SELECTED_COUNTRYCODE_EMG_MOB);
    String selectedCountryCodeEmgOff = request.getParameter(SELECTED_COUNTRYCODE_EMG_OFFICE);
    try {
        if (result.hasErrors()) {
            handleValidationError(student, model);
            resetCountryFlags(selectedCountryCodeRes, selectedCountryCodeMob, selectedCountryCodeEmgRes,
                    selectedCountryCodeEmgMob, selectedCountryCodeEmgOff, model);
            return VIEW_GET_STUDENT_DETAIL_PAGE;
        }

        trimProperties(student);
        UserInfo userInfo = (UserInfo) session.getAttribute(USER);

        if (userInfo instanceof StudentDetails
                && !userInfo.getUserLevelIdentifier().equals(student.getAdmissionNo())) {
            handleValidationError(student, model);
            result.rejectValue(STUDENT_ID, ERR_TUDENT_ADMISSIONNO_VIOLATE);
            resetCountryFlags(selectedCountryCodeRes, selectedCountryCodeMob, selectedCountryCodeEmgRes,
                    selectedCountryCodeEmgMob, selectedCountryCodeEmgOff, model);
            return VIEW_GET_STUDENT_DETAIL_PAGE;
        }

        // if check for initial save
        if (student != null && student.getStudentId() != 0) {

            Student stuObDB = studentService.findStudent(student.getStudentId());
            if (stuObDB == null) {
                student.setStudentId(0);
            } else {
                String admissionNoDB = stuObDB.getAdmissionNo();

                if (!admissionNoDB.equals(student.getAdmissionNo())) {
                    if (studentService.isAdmissionNoExist(student.getAdmissionNo())) {
                        handleValidationError(student, model);
                        result.rejectValue(STUDENT_ID, ERR_STUDENT_ADMISSIONNO_DUPLCATE);
                        resetCountryFlags(selectedCountryCodeRes, selectedCountryCodeMob,
                                selectedCountryCodeEmgRes, selectedCountryCodeEmgMob, selectedCountryCodeEmgOff,
                                model);
                        return VIEW_GET_STUDENT_DETAIL_PAGE;
                    } else {

                        if (!student.getSiblingAdmitionNo().trim().isEmpty()) {
                            if (!studentService.isAdmissionNoExist(student.getSiblingAdmitionNo())
                                    || student.getAdmissionNo().equals(student.getSiblingAdmitionNo())) {
                                result.rejectValue(SIBLING_ADMISSIONNO, ERR_SIBLING_ADMISSIONNO_VIOLATE);
                                resetCountryFlags(selectedCountryCodeRes, selectedCountryCodeMob,
                                        selectedCountryCodeEmgRes, selectedCountryCodeEmgMob,
                                        selectedCountryCodeEmgOff, model);
                                return VIEW_GET_STUDENT_DETAIL_PAGE;
                            }
                        }
                        if (!student.getResidenceNo().isEmpty() && !selectedCountryCodeRes.isEmpty()) {
                            if (student.getResidenceNo() != null
                                    && !selectedCountryCodeRes.equals(AkuraConstant.STRING_ZERO)
                                    && PhoneNumberValidateUtil.isValidPhoneNumber(student.getResidenceNo(),
                                            selectedCountryCodeRes)) {
                                displayResidencePhoneNumberDetails(student, selectedCountryCodeRes);
                            } else {
                                displayCountryFlagsWhenError(student, model, selectedCountryCodeRes,
                                        selectedCountryCodeMob, selectedCountryCodeEmgRes,
                                        selectedCountryCodeEmgMob, selectedCountryCodeEmgOff);
                                return VIEW_GET_STUDENT_DETAIL_PAGE;
                            }
                        }

                        if (!student.getMobileNo().isEmpty() && !selectedCountryCodeMob.isEmpty()) {
                            if (student.getMobileNo() != null
                                    && !selectedCountryCodeMob.equals(AkuraConstant.STRING_ZERO)
                                    && PhoneNumberValidateUtil.isValidPhoneNumber(student.getMobileNo(),
                                            selectedCountryCodeMob)) {
                                displayMobilePhoneNumberDetails(student, selectedCountryCodeMob);
                            } else {
                                displayCountryFlagsWhenError(student, model, selectedCountryCodeRes,
                                        selectedCountryCodeMob, selectedCountryCodeEmgRes,
                                        selectedCountryCodeEmgMob, selectedCountryCodeEmgOff);
                                return VIEW_GET_STUDENT_DETAIL_PAGE;
                            }
                        }

                        if (!student.getEmergencyContactResidenceNo().isEmpty()
                                && !selectedCountryCodeEmgRes.isEmpty()) {
                            if (student.getEmergencyContactResidenceNo() != null
                                    && !selectedCountryCodeEmgRes.equals(AkuraConstant.STRING_ZERO)
                                    && PhoneNumberValidateUtil.isValidPhoneNumber(
                                            student.getEmergencyContactResidenceNo(),
                                            selectedCountryCodeEmgRes)) {
                                displayEmgResidencePhoneNumberDetails(student, selectedCountryCodeEmgRes);
                            } else {
                                displayCountryFlagsWhenError(student, model, selectedCountryCodeRes,
                                        selectedCountryCodeMob, selectedCountryCodeEmgRes,
                                        selectedCountryCodeEmgMob, selectedCountryCodeEmgOff);
                                return VIEW_GET_STUDENT_DETAIL_PAGE;
                            }
                        }

                        if (!student.getEmergencyContactMobileNo().isEmpty()
                                && !selectedCountryCodeEmgMob.isEmpty()) {
                            if (student.getEmergencyContactMobileNo() != null
                                    && !selectedCountryCodeEmgMob.equals(AkuraConstant.STRING_ZERO)
                                    && PhoneNumberValidateUtil.isValidPhoneNumber(
                                            student.getEmergencyContactMobileNo(), selectedCountryCodeEmgMob)) {
                                displayEmgMobilePhoneNumberDetails(student, selectedCountryCodeEmgMob);
                            } else {
                                displayCountryFlagsWhenError(student, model, selectedCountryCodeRes,
                                        selectedCountryCodeMob, selectedCountryCodeEmgRes,
                                        selectedCountryCodeEmgMob, selectedCountryCodeEmgOff);
                                return VIEW_GET_STUDENT_DETAIL_PAGE;
                            }
                        }

                        if (!student.getEmergencyContactOfficeNo().isEmpty()
                                && !selectedCountryCodeEmgOff.isEmpty()) {
                            if (student.getEmergencyContactOfficeNo() != null
                                    && !selectedCountryCodeEmgOff.equals(AkuraConstant.STRING_ZERO)
                                    && PhoneNumberValidateUtil.isValidPhoneNumber(
                                            student.getEmergencyContactOfficeNo(), selectedCountryCodeEmgOff)) {
                                displayEmgOfficePhoneNumberDetails(student, selectedCountryCodeEmgOff);
                            } else {
                                displayCountryFlagsWhenError(student, model, selectedCountryCodeRes,
                                        selectedCountryCodeMob, selectedCountryCodeEmgRes,
                                        selectedCountryCodeEmgMob, selectedCountryCodeEmgOff);
                                return VIEW_GET_STUDENT_DETAIL_PAGE;
                            }
                        }
                        updateStudent(student);

                        // Update if user login exist for this student
                        UserLogin userLogin = userService
                                .getUserLoginByIdentificationNo(stuObDB.getAdmissionNo());
                        if (userLogin != null) {
                            userLogin.setUserIdentificationNo(student.getAdmissionNo());
                            userService.updateUser(userLogin);
                        }

                        // updated message pass through query string
                        String successUpdate = new ErrorMsgLoader()
                                .getErrorMessage(COMMON_MESSAGE_SUCCESSFULLY_UPDATED);
                        return VIEW_STUDENT_DETAIL + QUERY_STRING_UPDATE + successUpdate;
                    }
                } else {
                    try {
                        if (student.getMPhoto() != null) {
                            MultipartFile multipartFile = student.getMPhoto();
                            if (multipartFile.getSize() > 0) {
                                student.setPhoto(multipartFile.getBytes());
                            }
                        }
                    } catch (IOException e) {

                        LOG.error(ERROR_WHILE_RETRIEVING_FILE + e.toString());
                        throw new AkuraAppException(AkuraConstant.FILE_NOT_FOUND, e);
                    }
                    if (!student.getSiblingAdmitionNo().trim().isEmpty()) {
                        if (!studentService.isAdmissionNoExist(student.getSiblingAdmitionNo())
                                || student.getAdmissionNo().equals(student.getSiblingAdmitionNo())) {
                            result.rejectValue(SIBLING_ADMISSIONNO, ERR_SIBLING_ADMISSIONNO_VIOLATE);
                            returnResult = VIEW_GET_STUDENT_DETAIL_PAGE;
                            resetCountryFlags(selectedCountryCodeRes, selectedCountryCodeMob,
                                    selectedCountryCodeEmgRes, selectedCountryCodeEmgMob,
                                    selectedCountryCodeEmgOff, model);
                            return VIEW_GET_STUDENT_DETAIL_PAGE;
                        }
                    }

                    if (!student.getResidenceNo().isEmpty() && !selectedCountryCodeRes.isEmpty()) {
                        if (student.getResidenceNo() != null
                                && !selectedCountryCodeRes.equals(AkuraConstant.STRING_ZERO)
                                && PhoneNumberValidateUtil.isValidPhoneNumber(student.getResidenceNo(),
                                        selectedCountryCodeRes)) {
                            displayResidencePhoneNumberDetails(student, selectedCountryCodeRes);
                        } else {
                            displayCountryFlagsWhenError(student, model, selectedCountryCodeRes,
                                    selectedCountryCodeMob, selectedCountryCodeEmgRes,
                                    selectedCountryCodeEmgMob, selectedCountryCodeEmgOff);
                            return VIEW_GET_STUDENT_DETAIL_PAGE;
                        }
                    }

                    if (!student.getMobileNo().isEmpty() && !selectedCountryCodeMob.isEmpty()) {
                        if (student.getMobileNo() != null
                                && !selectedCountryCodeMob.equals(AkuraConstant.STRING_ZERO)
                                && PhoneNumberValidateUtil.isValidPhoneNumber(student.getMobileNo(),
                                        selectedCountryCodeMob)) {
                            displayMobilePhoneNumberDetails(student, selectedCountryCodeMob);
                        } else {
                            displayCountryFlagsWhenError(student, model, selectedCountryCodeRes,
                                    selectedCountryCodeMob, selectedCountryCodeEmgRes,
                                    selectedCountryCodeEmgMob, selectedCountryCodeEmgOff);
                            return VIEW_GET_STUDENT_DETAIL_PAGE;
                        }
                    }

                    if (!student.getEmergencyContactResidenceNo().isEmpty()
                            && !selectedCountryCodeEmgRes.isEmpty()) {
                        if (student.getEmergencyContactResidenceNo() != null
                                && !selectedCountryCodeEmgRes.equals(AkuraConstant.STRING_ZERO)
                                && PhoneNumberValidateUtil.isValidPhoneNumber(
                                        student.getEmergencyContactResidenceNo(), selectedCountryCodeEmgRes)) {
                            displayEmgResidencePhoneNumberDetails(student, selectedCountryCodeEmgRes);
                        } else {
                            displayCountryFlagsWhenError(student, model, selectedCountryCodeRes,
                                    selectedCountryCodeMob, selectedCountryCodeEmgRes,
                                    selectedCountryCodeEmgMob, selectedCountryCodeEmgOff);
                            return VIEW_GET_STUDENT_DETAIL_PAGE;
                        }
                    }

                    if (!student.getEmergencyContactMobileNo().isEmpty()
                            && !selectedCountryCodeEmgMob.isEmpty()) {
                        if (student.getEmergencyContactMobileNo() != null
                                && !selectedCountryCodeEmgMob.equals(AkuraConstant.STRING_ZERO)
                                && PhoneNumberValidateUtil.isValidPhoneNumber(
                                        student.getEmergencyContactMobileNo(), selectedCountryCodeEmgMob)) {
                            displayEmgMobilePhoneNumberDetails(student, selectedCountryCodeEmgMob);
                        } else {
                            displayCountryFlagsWhenError(student, model, selectedCountryCodeRes,
                                    selectedCountryCodeMob, selectedCountryCodeEmgRes,
                                    selectedCountryCodeEmgMob, selectedCountryCodeEmgOff);
                            return VIEW_GET_STUDENT_DETAIL_PAGE;
                        }
                    }

                    if (!student.getEmergencyContactOfficeNo().isEmpty()
                            && !selectedCountryCodeEmgOff.isEmpty()) {
                        if (student.getEmergencyContactOfficeNo() != null
                                && !selectedCountryCodeEmgOff.equals(AkuraConstant.STRING_ZERO)
                                && PhoneNumberValidateUtil.isValidPhoneNumber(
                                        student.getEmergencyContactOfficeNo(), selectedCountryCodeEmgOff)) {
                            displayEmgOfficePhoneNumberDetails(student, selectedCountryCodeEmgOff);
                        } else {
                            displayCountryFlagsWhenError(student, model, selectedCountryCodeRes,
                                    selectedCountryCodeMob, selectedCountryCodeEmgRes,
                                    selectedCountryCodeEmgMob, selectedCountryCodeEmgOff);
                            return VIEW_GET_STUDENT_DETAIL_PAGE;
                        }
                    }
                    updateStudent(student);

                    // updated message pass through query string
                    String successUpdate = new ErrorMsgLoader()
                            .getErrorMessage(COMMON_MESSAGE_SUCCESSFULLY_UPDATED);
                    return VIEW_STUDENT_DETAIL + QUERY_STRING_UPDATE + successUpdate;
                }
            }
        }

        if (student != null && student.getStudentId() == 0) {
            if (studentService.isAdmissionNoExist(student.getAdmissionNo())) {

                model.addAttribute(MODEL_ATT_IMAGE_PATH, RESOURCES_NO_PROFILE_IMAGE);
                result.rejectValue(STUDENT_ID, ERR_STUDENT_ADMISSIONNO_DUPLCATE);
                returnResult = VIEW_GET_STUDENT_DETAIL_PAGE;
                resetCountryFlags(selectedCountryCodeRes, selectedCountryCodeMob, selectedCountryCodeEmgRes,
                        selectedCountryCodeEmgMob, selectedCountryCodeEmgOff, model);
                return VIEW_GET_STUDENT_DETAIL_PAGE;
            } else {
                if (student.getMPhoto() != null) {
                    try {
                        MultipartFile multipartFile = student.getMPhoto();
                        if (multipartFile.getSize() > 0) {
                            student.setPhoto(multipartFile.getBytes());
                        }
                    } catch (IOException e) {
                        LOG.error(ERROR_WHILE_RETRIEVING_FILE + e.toString());
                        throw new AkuraAppException(AkuraConstant.FILE_NOT_FOUND, e);
                    }
                }
                if (!student.getSiblingAdmitionNo().trim().isEmpty()) {
                    if (!studentService.isAdmissionNoExist(student.getSiblingAdmitionNo())
                            || student.getAdmissionNo().equals(student.getSiblingAdmitionNo())) {
                        result.rejectValue(SIBLING_ADMISSIONNO, ERR_SIBLING_ADMISSIONNO_VIOLATE);
                        returnResult = VIEW_GET_STUDENT_DETAIL_PAGE;
                        resetCountryFlags(selectedCountryCodeRes, selectedCountryCodeMob,
                                selectedCountryCodeEmgRes, selectedCountryCodeEmgMob, selectedCountryCodeEmgOff,
                                model);
                        return VIEW_GET_STUDENT_DETAIL_PAGE;
                    }
                }

                student.setStatusId(1);

                if (!student.getResidenceNo().isEmpty() && !selectedCountryCodeRes.isEmpty()) {
                    if (student.getResidenceNo() != null
                            && !selectedCountryCodeRes.equals(AkuraConstant.STRING_ZERO)
                            && PhoneNumberValidateUtil.isValidPhoneNumber(student.getResidenceNo(),
                                    selectedCountryCodeRes)) {
                        displayResidencePhoneNumberDetails(student, selectedCountryCodeRes);
                    } else {
                        displayCountryFlagsWhenError(student, model, selectedCountryCodeRes,
                                selectedCountryCodeMob, selectedCountryCodeEmgRes, selectedCountryCodeEmgMob,
                                selectedCountryCodeEmgOff);
                        return VIEW_GET_STUDENT_DETAIL_PAGE;
                    }
                }

                if (!student.getMobileNo().isEmpty() && !selectedCountryCodeMob.isEmpty()) {
                    if (student.getMobileNo() != null
                            && !selectedCountryCodeMob.equals(AkuraConstant.STRING_ZERO)
                            && PhoneNumberValidateUtil.isValidPhoneNumber(student.getMobileNo(),
                                    selectedCountryCodeMob)) {
                        displayMobilePhoneNumberDetails(student, selectedCountryCodeMob);
                    } else {
                        displayCountryFlagsWhenError(student, model, selectedCountryCodeRes,
                                selectedCountryCodeMob, selectedCountryCodeEmgRes, selectedCountryCodeEmgMob,
                                selectedCountryCodeEmgOff);
                        return VIEW_GET_STUDENT_DETAIL_PAGE;
                    }
                }

                if (!student.getEmergencyContactResidenceNo().isEmpty()
                        && !selectedCountryCodeEmgRes.isEmpty()) {
                    if (student.getEmergencyContactResidenceNo() != null
                            && !selectedCountryCodeEmgRes.equals(AkuraConstant.STRING_ZERO)
                            && PhoneNumberValidateUtil.isValidPhoneNumber(
                                    student.getEmergencyContactResidenceNo(), selectedCountryCodeEmgRes)) {
                        displayEmgResidencePhoneNumberDetails(student, selectedCountryCodeEmgRes);
                    } else {
                        displayCountryFlagsWhenError(student, model, selectedCountryCodeRes,
                                selectedCountryCodeMob, selectedCountryCodeEmgRes, selectedCountryCodeEmgMob,
                                selectedCountryCodeEmgOff);
                        return VIEW_GET_STUDENT_DETAIL_PAGE;
                    }
                }

                if (!student.getEmergencyContactMobileNo().isEmpty() && !selectedCountryCodeEmgMob.isEmpty()) {
                    if (student.getEmergencyContactMobileNo() != null
                            && !selectedCountryCodeEmgMob.equals(AkuraConstant.STRING_ZERO)
                            && PhoneNumberValidateUtil.isValidPhoneNumber(student.getEmergencyContactMobileNo(),
                                    selectedCountryCodeEmgMob)) {
                        displayEmgMobilePhoneNumberDetails(student, selectedCountryCodeEmgMob);
                    } else {
                        displayCountryFlagsWhenError(student, model, selectedCountryCodeRes,
                                selectedCountryCodeMob, selectedCountryCodeEmgRes, selectedCountryCodeEmgMob,
                                selectedCountryCodeEmgOff);
                        return VIEW_GET_STUDENT_DETAIL_PAGE;
                    }
                }

                if (!student.getEmergencyContactOfficeNo().isEmpty() && !selectedCountryCodeEmgOff.isEmpty()) {
                    if (student.getEmergencyContactOfficeNo() != null
                            && !selectedCountryCodeEmgOff.equals(AkuraConstant.STRING_ZERO)
                            && PhoneNumberValidateUtil.isValidPhoneNumber(student.getEmergencyContactOfficeNo(),
                                    selectedCountryCodeEmgOff)) {
                        displayEmgOfficePhoneNumberDetails(student, selectedCountryCodeEmgOff);
                    } else {
                        displayCountryFlagsWhenError(student, model, selectedCountryCodeRes,
                                selectedCountryCodeMob, selectedCountryCodeEmgRes, selectedCountryCodeEmgMob,
                                selectedCountryCodeEmgOff);
                        return VIEW_GET_STUDENT_DETAIL_PAGE;
                    }
                }

                studentService.saveStudent(student);
                if (checkStudentDisabilityFilled(student.getStudentDisability())) {
                    student.getStudentDisability().setStudentId(student.getStudentId());
                    trimStudentDisabilityObj(student.getStudentDisability());
                    studentService.saveStudentDisability(student.getStudentDisability());
                }
                returnResult = VIEW_NEW_STUDENT_DETAIL;
            }
        }
    } catch (AkuraAppException e) {
        if (e.getCause() instanceof TransientDataAccessResourceException) {
            String message = new ErrorMsgLoader().getErrorMessage(IMAGE_DATABASE_SIZE);
            model.addAttribute(ERROR_MESSAGE, message);
            resetCountryFlags(selectedCountryCodeRes, selectedCountryCodeMob, selectedCountryCodeEmgRes,
                    selectedCountryCodeEmgMob, selectedCountryCodeEmgOff, model);
            return returnResult;
        }
    }

    return VIEW_NEW_STUDENT_DETAIL;
}

From source file:mx.edu.um.mateo.activos.web.ActivoController.java

@RequestMapping(value = "/crea", method = RequestMethod.POST)
public String crea(HttpServletRequest request, HttpServletResponse response, @Valid Activo activo,
        BindingResult bindingResult, Errors errors, Model modelo, RedirectAttributes redirectAttributes,
        @RequestParam(value = "imagen", required = false) MultipartFile archivo) {
    for (String nombre : request.getParameterMap().keySet()) {
        log.debug("Param: {} : {}", nombre, request.getParameterMap().get(nombre));
    }/*from w  w w . j a  v  a  2 s . c om*/
    if (bindingResult.hasErrors()) {
        log.debug("Hubo algun error en la forma, regresando");

        Long empresaId = (Long) request.getSession().getAttribute("empresaId");

        List<String> motivos = new ArrayList<>();
        motivos.add("COMPRA");
        motivos.add("DONACION");
        modelo.addAttribute("motivos", motivos);

        Map<String, Object> params = new HashMap<>();
        params.put("empresa", empresaId);
        params.put("reporte", true);
        params = tipoActivoDao.lista(params);
        modelo.addAttribute("tiposDeActivo", params.get("tiposDeActivo"));

        List<CentroCosto> centrosDeCosto = centroCostoDao.listaPorEmpresa(ambiente.obtieneUsuario());
        modelo.addAttribute("centrosDeCosto", centrosDeCosto);

        return "activoFijo/activo/nuevo";
    }

    try {
        Usuario usuario = ambiente.obtieneUsuario();
        if (archivo != null && !archivo.isEmpty()) {
            Imagen imagen = new Imagen(archivo.getOriginalFilename(), archivo.getContentType(),
                    archivo.getSize(), archivo.getBytes());
            activo.getImagenes().add(imagen);
        }
        log.debug("TipoActivo: {}", activo.getTipoActivo().getId());
        activo = activoDao.crea(activo, usuario);
    } catch (ConstraintViolationException | IOException e) {
        log.error("No se pudo crear al activo", e);
        errors.rejectValue("codigo", "campo.duplicado.message", new String[] { "codigo" }, null);

        Long empresaId = (Long) request.getSession().getAttribute("empresaId");

        List<String> motivos = new ArrayList<>();
        motivos.add("COMPRA");
        motivos.add("DONACION");
        modelo.addAttribute("motivos", motivos);

        Map<String, Object> params = new HashMap<>();
        params.put("empresa", empresaId);
        params.put("reporte", true);
        params = tipoActivoDao.lista(params);
        modelo.addAttribute("tiposDeActivo", params.get("tiposDeActivo"));

        List<CentroCosto> centrosDeCosto = centroCostoDao.listaPorEmpresa(ambiente.obtieneUsuario());
        modelo.addAttribute("centrosDeCosto", centrosDeCosto);

        return "activoFijo/activo/nuevo";
    }

    redirectAttributes.addFlashAttribute("message", "activo.creado.message");
    redirectAttributes.addFlashAttribute("messageAttrs", new String[] { activo.getFolio() });

    return "redirect:/activoFijo/activo/ver/" + activo.getId();
}

From source file:com.siblinks.ws.service.impl.PlaylistServiceImpl.java

/**
 * {@inheritDoc}/*from   w  w  w .  j  a v  a2s  .c  o m*/
 */
private String uploadPlaylistThumbnail(final MultipartFile image) throws Exception {
    String fullPath = "";
    String filename = "";
    String name;
    String filepath = "";
    String directory = environment.getProperty("directoryPlaylistImage");
    String service = environment.getProperty("directoryGetPlaylistImage");
    String strExtenstionFile = environment.getProperty("file.upload.image.type");
    String limitSize = environment.getProperty("file.upload.essay.size");

    if (image != null) {
        name = image.getOriginalFilename();
        String nameExt = FilenameUtils.getExtension(name);
        boolean status = strExtenstionFile.contains(nameExt.toLowerCase());
        if (image.getSize() > Long.parseLong(limitSize)) {
            throw new Exception("Thumbnail maximum is 5MB.");
        } else {
            BufferedOutputStream stream = null;
            if (directory != null && status) {
                try {
                    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(image.getBytes());

                    fullPath = service + filename;
                } catch (Exception e) {
                    throw new Exception("Upload playlist thumbnail failed");
                } finally {
                    if (stream != null) {
                        stream.close();
                    }
                }
            }
        }
    } else {
        throw new Exception("Please select playlist thumbnail.");
    }

    return fullPath;
}

From source file:com.siblinks.ws.service.impl.PostServiceImpl.java

/**
 *
 * @param uploadfile/*ww w. ja v  a  2s.c  om*/
 * @param path
 * @return
 * @throws FileNotFoundException
 */
private String uploadFile(final MultipartFile uploadfile, final String path) throws FileNotFoundException {

    String filename = "";
    BufferedOutputStream stream = null;
    try {
        String directory = environment.getProperty(path);
        if (directory != null) {
            RandomString randomName = new RandomString();
            Date date = new Date();
            filename = randomName.random() + date.getTime();

            String filepath = Paths.get(directory, filename + "." + "png").toString();
            // 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());
        }
    } catch (Exception e) {
        e.printStackTrace();
    } finally {
        try {
            if (stream != null) {
                stream.close();
            }
        } catch (IOException e) {
            // Do nothing
        }
    }
    return filename;
}

From source file:com.glaf.core.web.springmvc.FileUploadController.java

@ResponseBody
@RequestMapping("/upload")
public void upload(HttpServletRequest request, HttpServletResponse response) {
    response.setContentType("text/plain;charset=UTF-8");
    LoginContext loginContext = RequestUtils.getLoginContext(request);
    String serviceKey = request.getParameter("serviceKey");
    String responseType = request.getParameter("responseType");
    Map<String, Object> paramMap = RequestUtils.getParameterMap(request);
    logger.debug("paramMap:" + paramMap);
    MultipartHttpServletRequest req = (MultipartHttpServletRequest) request;
    String type = req.getParameter("type");
    if (StringUtils.isEmpty(type)) {
        type = "0";
    }//from  w  w w .  j  a v a 2 s. co  m
    int maxUploadSize = conf.getInt(serviceKey + ".maxUploadSize", 0);
    if (maxUploadSize == 0) {
        maxUploadSize = conf.getInt("upload.maxUploadSize", 50);// 50MB
    }
    maxUploadSize = maxUploadSize * FileUtils.MB_SIZE;

    /**
     * ?maxDiskSize,5MB
     */
    int maxDiskSize = conf.getInt(serviceKey + ".maxDiskSize", 0);
    if (maxDiskSize == 0) {
        maxDiskSize = conf.getInt("upload.maxDiskSize", 1024 * 1024 * 2);// 2MB
    }

    logger.debug("maxUploadSize:" + maxUploadSize);
    String uploadDir = Constants.UPLOAD_PATH;
    InputStream inputStream = null;
    try {
        PrintWriter out = response.getWriter();
        Map<String, MultipartFile> fileMap = req.getFileMap();
        Set<Entry<String, MultipartFile>> entrySet = fileMap.entrySet();
        for (Entry<String, MultipartFile> entry : entrySet) {
            MultipartFile mFile = entry.getValue();
            logger.debug("fize size:" + mFile.getSize());
            if (mFile.getOriginalFilename() != null && mFile.getSize() > 0 && mFile.getSize() < maxUploadSize) {
                String filename = mFile.getOriginalFilename();
                logger.debug("upload file:" + filename);
                logger.debug("fize size:" + mFile.getSize());
                String fileId = UUID32.getUUID();

                // ????
                String autoCreatedDateDirByParttern = "yyyy/MM/dd";
                String autoCreatedDateDir = DateFormatUtils.format(new java.util.Date(),
                        autoCreatedDateDirByParttern);
                String rootDir = SystemProperties.getConfigRootPath();
                if (!rootDir.endsWith(String.valueOf(File.separatorChar))) {
                    rootDir = rootDir + File.separatorChar;
                }
                File savePath = new File(rootDir + uploadDir + autoCreatedDateDir);
                if (!savePath.exists()) {
                    savePath.mkdirs();
                }

                String fileName = savePath + "/" + fileId;

                BlobItem dataFile = new BlobItemEntity();
                dataFile.setLastModified(System.currentTimeMillis());
                dataFile.setCreateBy(loginContext.getActorId());
                dataFile.setFileId(fileId);
                dataFile.setPath(uploadDir + autoCreatedDateDir + "/" + fileId);
                dataFile.setFilename(mFile.getOriginalFilename());
                dataFile.setName(mFile.getOriginalFilename());
                dataFile.setContentType(mFile.getContentType());
                dataFile.setType(type);
                dataFile.setStatus(0);
                dataFile.setServiceKey(serviceKey);
                if (mFile.getSize() <= maxDiskSize) {
                    dataFile.setData(mFile.getBytes());
                }
                blobService.insertBlob(dataFile);
                dataFile.setData(null);

                if (mFile.getSize() > maxDiskSize) {
                    FileUtils.save(fileName, inputStream);
                    logger.debug(fileName + " save ok.");
                }

                if (StringUtils.equalsIgnoreCase(responseType, "json")) {
                    StringBuilder json = new StringBuilder();
                    json.append("{");
                    json.append("'");
                    json.append("fileId");
                    json.append("':'");
                    json.append(fileId);
                    json.append("'");
                    Enumeration<String> pNames = request.getParameterNames();
                    String pName;
                    while (pNames.hasMoreElements()) {
                        json.append(",");
                        pName = (String) pNames.nextElement();
                        json.append("'");
                        json.append(pName);
                        json.append("':'");
                        json.append(request.getParameter(pName));
                        json.append("'");
                    }
                    json.append("}");
                    logger.debug(json.toString());
                    response.getWriter().write(json.toString());
                } else {
                    out.print(fileId);
                }
            }
        }

    } catch (Exception ex) {
        ex.printStackTrace();
    } finally {
        IOUtils.close(inputStream);
    }
}

From source file:com.jd.survey.web.settings.SurveyDefinitionController.java

/**
 * Updates the survey logo// w  w  w . ja  va2s .  c o m
 * @param file
 * @param surveyDefinitionId
 * @param proceed
 * @param principal
 * @param uiModel
 * @param httpServletRequest
 * @return
 */
@SuppressWarnings("unchecked")
@Secured({ "ROLE_ADMIN", "ROLE_SURVEY_ADMIN" })
@RequestMapping(value = "/logo", method = RequestMethod.POST, produces = "text/html")
public String updateLogo(@RequestParam("file") MultipartFile file, @RequestParam("id") Long surveyDefinitionId,
        @RequestParam(value = "_proceed", required = false) String proceed, Principal principal, Model uiModel,
        HttpServletRequest httpServletRequest) {
    try {
        User user = userService.user_findByLogin(principal.getName());
        //Check if the user is authorized
        if (!securityService.userIsAuthorizedToManageSurvey(surveyDefinitionId, user)) {
            log.warn("Unauthorized access to url path " + httpServletRequest.getPathInfo()
                    + " attempted by user login:" + principal.getName() + "from IP:"
                    + httpServletRequest.getLocalAddr());
            return "accessDenied";
        }

        GlobalSettings globalSettings = applicationSettingsService.getSettings();

        //validate content type
        if (file.isEmpty()
                || !globalSettings.getValidImageTypesAsList().contains(file.getContentType().toLowerCase())) {
            uiModel.addAttribute("surveyDefinition",
                    surveySettingsService.surveyDefinition_findById(surveyDefinitionId));
            uiModel.addAttribute("invalidFile", true);
            return "settings/surveyDefinitions/logo";
        }

        SurveyDefinition surveyDefinition = surveySettingsService
                .surveyDefinition_updateLogo(surveyDefinitionId, file.getBytes());
        uiModel.asMap().clear();
        return "settings/surveyDefinitions/saved";
    } catch (Exception e) {
        log.error(e.getMessage(), e);
        throw (new RuntimeException(e));
    }

}

From source file:com.portfolio.springsecurity.service.ProjectServiceImpl.java

public void addNewProject(Project project, String[] fieldNames, User_1 user, MultipartFile[] projectImages) {
    Collection<Field> fields = new HashSet<Field>();
    for (String fieldName : fieldNames) {
        fields.add(fieldDao.findFieldByName(fieldName));
    }/*w  ww  . j a v a 2  s  .  co m*/
    project.setFieldCollection(fields);

    User_1 userFromDao = userDao.findById(user.getId());
    project.setUSERid(userFromDao);

    List<Image> imageList = new ArrayList<Image>();

    MultipartFile coverImage = projectImages[0];

    for (int i = 1; i < projectImages.length; i++) {

        if (!projectImages[i].isEmpty()) {

            try {
                String filepath = context.getRealPath("/static/");
                System.out.println(filepath);
                FileOutputStream fos;

                String[] multipartParts = projectImages[i].getOriginalFilename().split("\\.");
                String extension = multipartParts[multipartParts.length - 1];
                if (extension.equals("png") || extension.equals("jpg") || extension.equals("jpeg")) {

                    imageList.add(new Image());

                    String imageName = generateUniqueFileName() + "." + extension;
                    String filename = filepath + "\\" + imageName;
                    fos = new FileOutputStream(filename);
                    fos.write(projectImages[i].getBytes());
                    fos.close();

                    imageList.get(imageList.size() - 1).setPROJECTid(project);
                    imageList.get(imageList.size() - 1).setSrc(imageName);

                } else {
                    System.out.println("nije dobra extenzija");
                }

            } catch (FileNotFoundException ex) {
                Logger.getLogger(ProjectServiceImpl.class.getName()).log(Level.SEVERE, null, ex);
            } catch (IOException ex) {
                Logger.getLogger(ProjectServiceImpl.class.getName()).log(Level.SEVERE, null, ex);
            }

        }
    }
    project.setImageCollection(imageList);

    if (!coverImage.isEmpty()) {
        try {

            String filepath = context.getRealPath("/static/");
            System.out.println(filepath);
            FileOutputStream fos;
            System.out.println("!!!!!!!!!!!!!!!!!!!!!!!!!!!!");
            String[] multipartParts = coverImage.getOriginalFilename().split("\\.");
            String extension = multipartParts[multipartParts.length - 1];
            if (extension.equals("png") || extension.equals("jpg") || extension.equals("jpeg")) {

                String imageName = generateUniqueFileName() + "." + extension;
                String filename = filepath + "\\" + imageName;
                fos = new FileOutputStream(filename);
                fos.write(coverImage.getBytes());
                fos.close();

                project.setCoverImage(imageName);

            } else {
                System.out.println("nije dobra extenzija");
            }

        } catch (FileNotFoundException ex) {
            Logger.getLogger(ProjectServiceImpl.class.getName()).log(Level.SEVERE, null, ex);
        } catch (IOException ex) {
            Logger.getLogger(ProjectServiceImpl.class.getName()).log(Level.SEVERE, null, ex);
        }

    }

    projectDao.addNewProject(project);
}