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

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

Introduction

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

Prototype

public MimeMessageHelper(MimeMessage mimeMessage, int multipartMode, @Nullable String encoding)
        throws MessagingException 

Source Link

Document

Create a new MimeMessageHelper for the given MimeMessage, in multipart mode (supporting alternative texts, inline elements and attachments) if requested.

Usage

From source file:dk.teachus.backend.bean.impl.SpringMailBean.java

public void sendMail(final InternetAddress sender, final InternetAddress recipient, final String subject,
        final String body, final Type mailType) throws MailException {
    try {/*from  www .  j a v a 2  s  . co m*/
        mailSender.send(new MimeMessagePreparator() {
            public void prepare(MimeMessage mimeMessage) throws Exception {
                MimeMessageHelper message = new MimeMessageHelper(mimeMessage, false, "UTF-8");

                message.setFrom(sender);
                message.addTo(recipient);
                message.setSubject(subject);

                switch (mailType) {
                case HTML:
                    message.setText(body, true);
                    break;
                default:
                    message.setText(body);
                    break;
                }
            }
        });
    } catch (MailSendException e) {
        Map<?, ?> failedMessages = e.getFailedMessages();

        if (failedMessages != null && failedMessages.isEmpty() == false) {
            Object object = failedMessages.values().iterator().next();
            if (object != null) {
                Exception mailException = (Exception) object;
                if (mailException.getCause() instanceof SMTPAddressFailedException) {
                    throw new RecipientErrorMailException(e);
                }
            }
        }

        throw new MailException(e);
    }
}

From source file:julie.com.mikaelson.util.EmailSenderUtil.java

synchronized public static boolean sendEmail(String[] toList, String content) {
    boolean result = false;
    MimeMessage message = javaMail.createMimeMessage();
    MimeMessageHelper messageHelp;//  w ww  . j  ava  2  s  .c  om
    try {
        long start = System.currentTimeMillis();
        System.out.println("sendEmail invoked ");
        messageHelp = new MimeMessageHelper(message, true, "UTF-8");
        messageHelp.setFrom(emailConfig.getFrom());
        messageHelp.setTo(toList);
        messageHelp.setSubject("Test");
        String body = content + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
        messageHelp.setText(body, true);
        javaMail.send(message);
        System.out.println("send total time is" + (System.currentTimeMillis() - start));
        Thread.sleep(10 * 1000l);

    } catch (MailException e) {
        e.printStackTrace();
    } catch (MessagingException e) {
        e.printStackTrace();
    } catch (InterruptedException e) {
        e.printStackTrace();
    }

    return result;
}

From source file:org.jrecruiter.service.notification.impl.NotificationServiceActivator.java

/** {@inheritDoc} */
public void sendEmail(final EmailRequest request) {

    final MimeMessagePreparator preparator = new MimeMessagePreparator() {
        public void prepare(MimeMessage mimeMessage) throws MessagingException, IOException {

            final MimeMessageHelper message = new MimeMessageHelper(mimeMessage, true, "UTF-8");
            message.setFrom("no_reply@jrecruiter.org");
            message.setTo(request.getEmail());
            message.setSubject(request.getSubject());

            final Locale locale = LocaleContextHolder.getLocale();

            final Template textTemplate = freemarkerConfiguration
                    .getTemplate(request.getTemplatePrefix() + "-text.ftl", locale);

            final StringWriter textWriter = new StringWriter();
            try {
                textTemplate.process(request.getContext(), textWriter);
            } catch (TemplateException e) {
                throw new MailPreparationException("Can't generate email body.", e);
            }//from www.  j av  a2s  .c  om

            final Template htmlTemplate = freemarkerConfiguration
                    .getTemplate(request.getTemplatePrefix() + "-html.ftl", locale);

            final StringWriter htmlWriter = new StringWriter();
            try {
                htmlTemplate.process(request.getContext(), htmlWriter);
            } catch (TemplateException e) {
                throw new MailPreparationException("Can't generate email body.", e);
            }

            message.setText(textWriter.toString(), htmlWriter.toString());

        }
    };

    mailSender.send(preparator);
}

From source file:ch.wisv.areafiftylan.utils.mail.MailServiceImpl.java

@Override
public void sendMail(String recipientEmail, String recipientName, String subject, String messageString) {

    // Prepare message using a Spring helper
    final MimeMessage mimeMessage = this.mailSender.createMimeMessage();
    final MimeMessageHelper message;

    try {// ww  w. j a va 2  s  . c  o m
        message = new MimeMessageHelper(mimeMessage, true, "UTF-8");
        message.setSubject("[Area FiftyLAN] " + subject);
        message.setFrom(sender);
        message.setTo(recipientEmail);

        // Create the HTML body using Thymeleaf
        String htmlContent = prepareHtmlContent(recipientName, messageString);
        message.setText(htmlContent, true); // true = isHtml

        // Send mail
        this.mailSender.send(mimeMessage);
    } catch (MessagingException e) {
        throw new MailPreparationException("Unable to prepare email", e.getCause());
    } catch (MailException m) {
        throw new MailSendException("Unable to send email", m.getCause());
    }

}

From source file:com.boyuanitsm.fort.service.MailService.java

@Async
public void sendEmail(String to, String subject, String content, boolean isMultipart, boolean isHtml) {
    log.debug("Send e-mail[multipart '{}' and html '{}'] to '{}' with subject '{}' and content={}", isMultipart,
            isHtml, to, subject, content);

    // Prepare message using a Spring helper
    MimeMessage mimeMessage = javaMailSender.createMimeMessage();
    try {//from   w w  w.  j  av  a 2  s  .  c o  m
        MimeMessageHelper message = new MimeMessageHelper(mimeMessage, isMultipart, CharEncoding.UTF_8);
        message.setTo(to);
        message.setFrom(jHipsterProperties.getMail().getFrom());
        message.setSubject(subject);
        message.setText(content, isHtml);
        javaMailSender.send(mimeMessage);
        log.debug("Sent e-mail to User '{}'", to);
    } catch (Exception e) {
        log.warn("E-mail could not be sent to user '{}', exception is: {}", to, e.getMessage());
    }
}

From source file:alfio.manager.system.SmtpMailer.java

@Override
public void send(Event event, String to, List<String> cc, String subject, String text, Optional<String> html,
        Attachment... attachments) {//  w w  w  . ja v a 2s  .c om
    MimeMessagePreparator preparator = (mimeMessage) -> {
        MimeMessageHelper message = html.isPresent() || !ArrayUtils.isEmpty(attachments)
                ? new MimeMessageHelper(mimeMessage, true, "UTF-8")
                : new MimeMessageHelper(mimeMessage, "UTF-8");
        message.setSubject(subject);
        message.setFrom(
                configurationManager.getRequiredValue(
                        Configuration.from(event.getOrganizationId(), event.getId(), SMTP_FROM_EMAIL)),
                event.getDisplayName());
        String replyTo = configurationManager.getStringConfigValue(
                Configuration.from(event.getOrganizationId(), event.getId(), MAIL_REPLY_TO), "");
        if (StringUtils.isNotBlank(replyTo)) {
            message.setReplyTo(replyTo);
        }
        message.setTo(to);
        if (cc != null && !cc.isEmpty()) {
            message.setCc(cc.toArray(new String[cc.size()]));
        }
        if (html.isPresent()) {
            message.setText(text, html.get());
        } else {
            message.setText(text, false);
        }

        if (attachments != null) {
            for (Attachment a : attachments) {
                message.addAttachment(a.getFilename(), new ByteArrayResource(a.getSource()),
                        a.getContentType());
            }
        }

        message.getMimeMessage().saveChanges();
        message.getMimeMessage().removeHeader("Message-ID");
    };
    toMailSender(event).send(preparator);
}

From source file:edu.mum.emailservice.EmailService.java

public void sendOrderReceivedMail(final String recipientName, final String recipientEmail, Order order,
        String documentName, final Locale locale) throws MessagingException {

    // Prepare the evaluation context
    final Context thymeContext = new Context(locale);
    thymeContext.setVariable("name", recipientName);
    thymeContext.setVariable("order", order);

    // Prepare message using a Spring helper
    final MimeMessage mimeMessage = this.mailSender.createMimeMessage();
    final MimeMessageHelper message = new MimeMessageHelper(mimeMessage, true, "UTF-8");
    message.setSubject("Order Details");

    // could have CC, BCC, will also take an array of Strings
    message.setTo(recipientEmail);/*  w  ww  .j a va2 s .c  om*/

    // Create the HTML body using Thymeleaf
    final String htmlContent = this.templateEngine.process("orderReceivedMail", thymeContext);
    message.setText(htmlContent, true /* isHtml */);

    message.addInline("imtheguy", new ClassPathResource(IM_THE_GUY), JPG_MIME);

    String documentLocation = "templates/images/" + documentName;
    message.addAttachment(documentName, new ClassPathResource(documentLocation));

    /* 
       // Alternative
            File file = new File(documentLocation);
          message.addAttachment(documentName, file);
    */
    // Send email
    this.mailSender.send(mimeMessage);

}

From source file:com.jaspersoft.jasperserver.war.mail.impl.MailServiceImpl.java

public void sendEmailNotification(String subject, String body, String mailTo) {
    try {/*from w  w w .  ja  va 2 s  .  c  o m*/
        MimeMessage message = javaMailSender.createMimeMessage();
        MimeMessageHelper messageHelper = new MimeMessageHelper(message, true,
                encodingProvider.getCharacterEncoding());
        messageHelper.setFrom(mailFromAddress);
        messageHelper.setSubject(subject);

        StringBuffer messageText = new StringBuffer();

        messageText.append(body);

        messageHelper.setTo(mailTo);
        messageHelper.setText(messageText.toString());
        javaMailSender.send(message);
    } catch (MessagingException e) {
        log.error("Error while sending mail", e);
        throw new JSExceptionWrapper(e);
    }
}

From source file:it.cineca.pst.huborcid.service.MailService.java

@Async
public void sendEmail(String to, String subject, String content, boolean isMultipart, boolean isHtml) {
    log.debug("Send e-mail[multipart '{}' and html '{}'] to '{}' with subject '{}' and content={}", isMultipart,
            isHtml, to, subject, content);

    // Prepare message using a Spring helper
    MimeMessage mimeMessage = javaMailSender.createMimeMessage();
    try {//  w ww  .  ja v  a 2 s.  com
        MimeMessageHelper message = new MimeMessageHelper(mimeMessage, isMultipart, CharEncoding.UTF_8);
        message.setTo(to);
        message.setFrom(from);
        message.setSubject(subject);
        message.setText(content, isHtml);
        javaMailSender.send(mimeMessage);
        log.debug("Sent e-mail to User '{}'", to);
    } catch (Exception e) {
        log.warn("E-mail could not be sent to user '{}', exception is: {}", to, e.getMessage());
    }
}

From source file:com.consol.citrus.mail.message.MailMessageConverter.java

@Override
public MimeMailMessage convertOutbound(Message message, MailEndpointConfiguration endpointConfiguration) {
    MailMessage mailMessage = getMailMessage(message, endpointConfiguration);

    try {//w  w  w.j  av a 2  s  .  c  o  m
        MimeMessage mimeMessage = endpointConfiguration.getJavaMailSender().createMimeMessage();
        MimeMailMessage mimeMailMessage = new MimeMailMessage(new MimeMessageHelper(mimeMessage,
                mailMessage.getBody().hasAttachments(), mailMessage.getBody().getCharsetName()));

        convertOutbound(mimeMailMessage, new DefaultMessage(mailMessage, message.copyHeaders()),
                endpointConfiguration);

        return mimeMailMessage;
    } catch (MessagingException e) {
        throw new CitrusRuntimeException("Failed to create mail mime message", e);
    }
}