Example usage for org.springframework.mail.javamail MimeMessageHelper addAttachment

List of usage examples for org.springframework.mail.javamail MimeMessageHelper addAttachment

Introduction

In this page you can find the example usage for org.springframework.mail.javamail MimeMessageHelper addAttachment.

Prototype

public void addAttachment(String attachmentFilename, InputStreamSource inputStreamSource)
        throws MessagingException 

Source Link

Document

Add an attachment to the MimeMessage, taking the content from an org.springframework.core.io.InputStreamResource .

Usage

From source file:mx.edu.um.mateo.rh.web.EstudiosEmpleadoController.java

private void enviaCorreo(String tipo, List<EstudiosEmpleado> estudiosEmpleados, HttpServletRequest request)
        throws JRException, MessagingException {
    log.debug("Enviando correo {}", tipo);
    byte[] archivo = null;
    String tipoContenido = null;/*from ww w. j  a  v  a  2s. c  o  m*/
    switch (tipo) {
    case "PDF":
        archivo = generaPdf(estudiosEmpleados);
        tipoContenido = "application/pdf";
        break;
    case "CSV":
        archivo = generaCsv(estudiosEmpleados);
        tipoContenido = "text/csv";
        break;
    case "XLS":
        archivo = generaXls(estudiosEmpleados);
        tipoContenido = "application/vnd.ms-excel";
    }

    MimeMessage message = mailSender.createMimeMessage();
    MimeMessageHelper helper = new MimeMessageHelper(message, true);
    helper.setTo(ambiente.obtieneUsuario().getUsername());
    String titulo = messageSource.getMessage("estudiosEmpleado.lista.label", null, request.getLocale());
    helper.setSubject(messageSource.getMessage("envia.correo.titulo.message", new String[] { titulo },
            request.getLocale()));
    helper.setText(messageSource.getMessage("envia.correo.contenido.message", new String[] { titulo },
            request.getLocale()), true);
    helper.addAttachment(titulo + "." + tipo, new ByteArrayDataSource(archivo, tipoContenido));
    mailSender.send(message);
}

From source file:com.github.dactiv.fear.service.service.message.MessageService.java

/**
 * ??//from w  w w . ja v  a 2  s  .  c  o  m
 *
 * @param nickname ?? null
 * @param mail     
 */
private void doSendMail(String nickname, Mail mail) {
    try {

        JavaMailSender mailSender = getJavaMailSender();

        if (mailSender == null) {
            throw new ServiceException("???");
        }

        MimeMessage msg = mailSender.createMimeMessage();
        MimeMessageHelper helper;

        if (mailSender instanceof JavaMailSenderImpl) {
            JavaMailSenderImpl jmsi = (JavaMailSenderImpl) mailSender;
            helper = new MimeMessageHelper(msg, true, jmsi.getDefaultEncoding());
        } else {
            helper = new MimeMessageHelper(msg, true);
        }

        helper.setTo(mail.getTo());
        helper.setFrom(getSendForm(nickname, mailSender));
        helper.setSubject(mail.getTitle());
        helper.setText(mail.getContent(), mail.getHtml());

        if (!MapUtils.isEmpty(mail.getAttachment())) {
            for (Map.Entry<String, File> entry : mail.getAttachment().entrySet()) {
                helper.addAttachment(entry.getKey(), entry.getValue());
            }
        }

        mailSender.send(msg);

        LOGGER.info("???");
    } catch (Exception e) {
        LOGGER.error("??", e);
    }
}

From source file:com.foilen.smalltools.email.EmailServiceSpring.java

@Override
public void sendEmail(EmailBuilder emailBuilder) {

    try {/*from   w  ww  . j a v a  2 s. c  o m*/
        MimeMessage message = mailSender.createMimeMessage();
        MimeMessageHelper helper = new MimeMessageHelper(message, true);
        helper.setFrom(emailBuilder.getFrom());
        for (String to : emailBuilder.getTos()) {
            helper.addTo(to);
        }
        for (String cc : emailBuilder.getCcs()) {
            helper.addCc(cc);
        }
        for (String bcc : emailBuilder.getBccs()) {
            helper.addBcc(bcc);
        }
        helper.setSubject(emailBuilder.getSubject());
        helper.setText(emailBuilder.getBody(), emailBuilder.isHtml());

        // Inline
        for (EmailAttachment emailAttachment : emailBuilder.getInlineAttachments()) {
            helper.addInline(emailAttachment.getId(), emailAttachment.getResource());
        }

        // Attachment
        for (EmailAttachment emailAttachment : emailBuilder.getAttachments()) {
            helper.addAttachment(emailAttachment.getId(), emailAttachment.getResource());
        }

        mailSender.send(message);
    } catch (Exception e) {
        throw new SmallToolsException("Could not send email", e);
    }
}

From source file:mx.edu.um.mateo.general.web.BaseController.java

protected void enviaCorreo(String tipo, List<?> lista, HttpServletRequest request, String nombre,
        String tipoReporte, Long id) throws ReporteException {
    try {//from   w  w w .j  a  v  a  2s.  c  o  m
        log.debug("Enviando correo {}", tipo);
        byte[] archivo = null;
        String tipoContenido = null;
        switch (tipo) {
        case "PDF":
            archivo = generaPdf(lista, nombre, tipoReporte, id);
            tipoContenido = "application/pdf";
            break;
        case "CSV":
            archivo = generaCsv(lista, nombre, tipoReporte, id);
            tipoContenido = "text/csv";
            break;
        case "XLS":
            archivo = generaXls(lista, nombre, tipoReporte, id);
            tipoContenido = "application/vnd.ms-excel";
        }

        MimeMessage message = mailSender.createMimeMessage();
        MimeMessageHelper helper = new MimeMessageHelper(message, true);
        helper.setTo(ambiente.obtieneUsuario().getCorreo());
        String titulo = messageSource.getMessage(nombre + ".reporte.label", null, request.getLocale());
        helper.setSubject(messageSource.getMessage("envia.correo.titulo.message", new String[] { titulo },
                request.getLocale()));
        helper.setText(messageSource.getMessage("envia.correo.contenido.message", new String[] { titulo },
                request.getLocale()), true);
        helper.addAttachment(titulo + "." + tipo, new ByteArrayDataSource(archivo, tipoContenido));
        mailSender.send(message);
    } catch (JRException | MessagingException e) {
        throw new ReporteException("No se pudo generar el reporte", e);
    }
}

From source file:gr.abiss.calipso.mail.MailSender.java

/**
 * //from  www.  j ava 2s . c  o m
 * @param email
 * @param subject
 * @param messageBody
 * @param attachments
 * @param encryption
 * @param keyStorePath
 */
public void send(String email, String subject, String messageBody, Map<String, DataSource> attachments,
        boolean html) {
    // prepare message
    try {
        MimeMessage message = sender.createMimeMessage();
        MimeMessageHelper helper = new MimeMessageHelper(message, true, "UTF-8");
        if (html) {
            helper.setText(addHeaderAndFooter(messageBody), true);
        } else {
            helper.setText(messageBody, false);
        }
        helper.setSubject(subject);
        helper.setSentDate(new Date());
        helper.setFrom(from);
        // set TO
        helper.setTo(email);
        if (MapUtils.isNotEmpty(attachments)) {
            for (String attachmentFilename : attachments.keySet()) {
                DataSource in = attachments.get(attachmentFilename);
                if (in != null) {
                    helper.addAttachment(attachmentFilename, in);
                }
            }
        }

        //logger.info("Sending email: "+subject+"\n"+messageBody);
        sendInNewThread(message);
    } catch (Exception e) {
        logger.error("failed to prepare e-mail", e);
    }
}

From source file:be.roots.taconic.pricingguide.service.MailServiceImpl.java

@Override
public void sendReport(DateTime lastMonth, String filename, byte[] report) throws MessagingException {

    final MimeMessageHelper helper = new MimeMessageHelper(javaMailSender.createMimeMessage(), true);

    helper.setFrom(fromEmail);/*from  w  w  w .  ja  v  a 2s  .  c om*/

    if (StringUtils.isEmpty(testEmail)) {
        helper.setTo(reportRecipientEmail.split(","));
    } else {
        helper.setTo(testEmail.split(","));
    }

    if (!StringUtils.isEmpty(bccEmail)) {
        helper.setBcc(bccEmail.split(","));
    }

    helper.setSubject(documentTitle + " requests for " + lastMonth.toString(DefaultUtil.FORMAT_MONTH));

    final String body = "Dear<br>" + "<br>" + "Attached you find the overview of " + documentTitle
            + " requests for " + lastMonth.toString(DefaultUtil.FORMAT_MONTH) + ".<br>" + "<br>"
            + "Taconic Biosciences, Inc.<br>" + "One Hudson City Centre<br>" + "Hudson, New York 12534<br>"
            + "North America +1 888 822-6642<br>" + "Europe +45 70 23 04 05<br>" + "info@taconic.com<br>"
            + "www.taconic.com";

    helper.setText(body, true);

    helper.addAttachment(filename, new ByteArrayResource(report));

    javaMailSender.send(helper.getMimeMessage());

}

From source file:be.roots.taconic.pricingguide.service.MailServiceImpl.java

@Override
public void sendMail(Contact contact, byte[] pricingGuide) throws MessagingException {

    final MimeMessageHelper helper = new MimeMessageHelper(javaMailSender.createMimeMessage(), true);

    helper.setFrom(fromEmail);/*from  ww  w.  j av  a 2 s.c om*/

    if (StringUtils.isEmpty(testEmail)) {
        helper.setTo(contact.getEmail());
    } else {
        helper.setTo(testEmail.split(","));
    }

    if (!StringUtils.isEmpty(bccEmail)) {
        helper.setBcc(bccEmail.split(","));
    }

    helper.setSubject("Your " + documentTitle);

    final String body = "Dear " + contact.getFullName() + ",<br>" + "<br>" + "Your " + documentTitle
            + " is attached.<br>" + "<br>"
            + "Please <a href=\"http:www.taconic.com/customer-service/contact-us\">contact us</a> for any additional information.<br>"
            + "<br>" + "Taconic Biosciences, Inc.<br>" + "One Hudson City Centre<br>"
            + "Hudson, New York 12534<br>" + "North America +1 888 822-6642<br>" + "Europe +45 70 23 04 05<br>"
            + "info@taconic.com<br>" + "www.taconic.com";

    helper.setText(body, true);

    helper.addAttachment(documentFileName, new ByteArrayResource(pricingGuide));

    javaMailSender.send(helper.getMimeMessage());

}

From source file:com.springstudy.utils.email.MimeMailService.java

/**
 * ??MIME?.//from w w  w . ja v a  2  s .c  o  m
 */
public boolean sendNotificationMail(com.gmk.framework.common.utils.email.Email email) {
    try {
        MimeMessage msg = mailSender.createMimeMessage();
        MimeMessageHelper helper = new MimeMessageHelper(msg, true, DEFAULT_ENCODING);
        //??????
        String from = Global.getConfig("productName");
        if (StringUtils.isNotEmpty(email.getFrom())) {
            from = from + "-" + email.getFrom();
        }
        helper.setFrom(Global.getConfig("mailFrom"), from);
        helper.setTo(email.getAddress());
        if (StringUtils.isNotEmpty(email.getCc())) {
            String cc[] = email.getCc().split(";");
            helper.setCc(cc);//?
        }
        //
        helper.setSubject(email.getSubject());
        //
        if (StringUtils.isNotEmpty(email.getTemplate())) {
            String content = generateContent(email.getTemplate(), email.getContentMap());
            helper.setText(content, true);
        } else {
            helper.setText(email.getContent());
        }
        //
        if (ListUtils.isNotEmpty(email.getAttachment())) {
            for (File file : email.getAttachment()) {
                helper.addAttachment(MimeUtility.encodeWord(file.getName()), file);
            }
        }
        mailSender.send(msg);
        logger.info("HTML??");
        return true;
    } catch (MessagingException e) {
        logger.error(email.getAddressee() + "-" + email.getSubject() + "-" + "", e);
    } catch (Exception e) {
        logger.error(email.getAddressee() + "-" + email.getSubject() + "-" + "??", e);
    }
    return false;
}

From source file:hornet.framework.mail.MailServiceImpl.java

/**
 * Adds the extra smtp field.//from   w  w w.j a  v  a2s .c o m
 *
 * @param paramMap
 *            the param map
 * @param helper
 *            the helper
 * @throws MessagingException
 *             the messaging exception
 */
protected void addExtraSmtpField(final Map<String, Object> paramMap, final MimeMessageHelper helper)
        throws MessagingException {

    if (paramMap != null) {
        if (paramMap.containsKey(SMTP_HEADER_REPLYTO)) {
            helper.setReplyTo((String) paramMap.get(SMTP_HEADER_REPLYTO));
        }
        if (paramMap.containsKey(SMTP_HEADER_BCC)) {
            helper.setBcc((String) paramMap.get(SMTP_HEADER_BCC));
        }
        if (paramMap.containsKey(SMTP_HEADER_CC)) {
            helper.setCc((String) paramMap.get(SMTP_HEADER_CC));
        }
        if (paramMap.containsKey(SMTP_HEADER_PRIORITY)) {
            helper.setPriority((Integer) paramMap.get(SMTP_HEADER_PRIORITY));
        }
        if (paramMap.containsKey(SMTP_HEADER_RETURNPATH)) {
            ((SMTPMessage) helper.getMimeMessage())
                    .setEnvelopeFrom((String) paramMap.get(SMTP_HEADER_RETURNPATH));
        }
        if (paramMap.containsKey(SMTP_ATTACHMENT_CONTENU)) {
            helper.addAttachment((String) paramMap.get(SMTP_ATTACHMENT_NOM),
                    (InputStreamSource) paramMap.get(SMTP_ATTACHMENT_CONTENU));
        }
    }
}