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

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

Introduction

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

Prototype

public void setText(String plainText, String htmlText) throws MessagingException 

Source Link

Document

Set the given plain text and HTML text as alternatives, offering both options to the email client.

Usage

From source file:com.logicaalternativa.ejemplomock.rest.sender.SendMailCodePromotionImp.java

private void sendEmail(final PromotionCode promotionCode, final Locale locale) throws MessagingException {

    MimeMessage mimeMessage = getJavaMailSender().createMimeMessage();

    MimeMessageHelper helper = new MimeMessageHelper(mimeMessage, true, "UTF-8");

    final String subject = getMessageSource().getMessage("email.promotionCode.subject", new Object[] {},
            "email.promotionCode.subject", locale);

    final String to = (new StringBuilder())
            .append(promotionCode.getNameUser() != null ? promotionCode.getNameUser().toUpperCase() : "")
            .append("<").append(promotionCode.getEmail() != null ? promotionCode.getEmail() : "").append(">")
            .toString();// w  ww  .j ava  2  s .  c  o  m

    final String text = getMessageSource().getMessage("email.promotionCode.txt",
            new Object[] { promotionCode.getCode() }, "email.promotionCode.txt", locale);

    final String html = getMessageSource().getMessage("email.promotionCode.html",
            new Object[] { promotionCode.getCode() }, "email.promotionCode.html", locale);

    helper.setFrom(getFrom());
    helper.setTo(to);
    helper.setSubject(subject);
    helper.setText(text, html);

    getJavaMailSender().send(mimeMessage);

}

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  w  w w  .ja va  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.marc.lastweek.business.services.mail.impl.MailServiceImpl.java

private MimeMessagePreparator getMimeMessagePreparator(final Locale locale, final String templateName,
        final Map<String, Object> templateData, final String mailTo) {

    MimeMessagePreparator preparator = new MimeMessagePreparator() {
        public void prepare(MimeMessage mimeMessage) throws MessagingException {
            MimeMessageHelper message = new MimeMessageHelper(mimeMessage, true);

            // Set message attributes
            message.setTo(mailTo);/*  w w  w .  ja v a 2s .c o m*/
            message.setFrom(MailServiceImpl.this.from);
            message.setSubject(getMailMessageEntry(locale, templateName + FIELD_SUBJECT));

            // Add parameters
            Map<String, Object> model = new HashMap<String, Object>();
            model.put("locale", locale);
            model.put("dateTool", new DateTool());
            model.put("resourceTool", new ResourceTool());

            // Insert data in the template
            for (String name : templateData.keySet()) {
                model.put(name, templateData.get(name));
            }

            String text = VelocityEngineUtils.mergeTemplateIntoString(MailServiceImpl.this.velocityEngine,
                    MailServiceImpl.this.velocityTemplates.get(templateName), CHARSET, model);
            message.setText(text, true);

            // Insert stylesheet
            //ClassPathResource stylesheet = new ClassPathResource("templates/email.css", MailServiceImpl.class);
            //                ClassPathResource stylesheet = new ClassPathResource(MAIL_STYLESHEET, );
            //                message.addInline("email.css", stylesheet, "text/css");                        
        }
    };
    return preparator;
}

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  .  j  a 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:org.opentides.eventhandler.EmailHandler.java

public void sendEmail(String[] to, String[] cc, String[] bcc, String replyTo, String subject, String body,
        File[] attachments) {/*  w w  w  . jav  a 2  s . c o  m*/
    try {
        MimeMessage mimeMessage = javaMailSender.createMimeMessage();
        MimeMessageHelper mimeMessageHelper = new MimeMessageHelper(mimeMessage, true);

        mimeMessageHelper.setTo(toInetAddress(to));
        InternetAddress[] ccAddresses = toInetAddress(cc);
        if (ccAddresses != null)
            mimeMessageHelper.setCc(ccAddresses);
        InternetAddress[] bccAddresses = toInetAddress(bcc);
        if (bccAddresses != null)
            mimeMessageHelper.setBcc(bccAddresses);
        if (!StringUtil.isEmpty(replyTo))
            mimeMessageHelper.setReplyTo(replyTo);
        Map<String, Object> templateVariables = new HashMap<String, Object>();

        templateVariables.put("message-title", subject);
        templateVariables.put("message-body", body);

        StringWriter writer = new StringWriter();
        VelocityEngineUtils.mergeTemplate(velocityEngine, mailVmTemplate, "UTF-8", templateVariables, writer);

        mimeMessageHelper.setFrom(new InternetAddress(this.fromEmail, this.fromName));
        mimeMessageHelper.setSubject(subject);
        mimeMessageHelper.setText(writer.toString(), true);

        // check for attachment
        if (attachments != null && attachments.length > 0) {
            for (File attachment : attachments) {
                mimeMessageHelper.addAttachment(attachment.getName(), attachment);
            }
        }

        /**
         * The name of the identifier should be image
         * the number after the image name is the counter 
         * e.g. <img src="cid:image1" />
         */
        if (imagesPath != null && imagesPath.size() > 0) {
            int x = 1;
            for (String path : imagesPath) {
                FileSystemResource res = new FileSystemResource(new File(path));
                String imageName = "image" + x;
                mimeMessageHelper.addInline(imageName, res);
                x++;
            }
        }
        javaMailSender.send(mimeMessage);
    } catch (MessagingException e) {
        _log.error(e, e);
    } catch (UnsupportedEncodingException uee) {
        _log.error(uee, uee);
    }
}

From source file:it.jugpadova.blo.JuggerBo.java

/**
 * General jugger mail sender/*from   w w  w. j ava2 s. c om*/
 *
 * @param jugger
 * @param baseUrl
 * @param subject
 * @param oneWayCode
 * @param template
 */
private void sendEmail(final Jugger jugger, final String baseUrl, final String subject, final String oneWayCode,
        final String template) {
    MimeMessagePreparator preparator = new MimeMessagePreparator() {

        @SuppressWarnings(value = "unchecked")
        public void prepare(MimeMessage mimeMessage) throws Exception {
            MimeMessageHelper message = new MimeMessageHelper(mimeMessage);
            message.setTo(jugger.getEmail());
            message.setFrom(conf.getConfirmationSenderEmailAddress());
            message.setSubject(subject);
            Map model = new HashMap();
            model.put("jugger", jugger);
            model.put("baseUrl", baseUrl);
            model.put("oneWayCode", URLEncoder.encode(oneWayCode, "UTF-8"));
            model.put("username", URLEncoder.encode(jugger.getUser().getUsername(), "UTF-8"));
            String text = VelocityEngineUtils.mergeTemplateIntoString(velocityEngine, template, model);
            message.setText(text, true);
        }
    };
    this.mailSender.send(preparator);
}

From source file:info.jtrac.mail.MailSender.java

public void sendUserPassword(User user, String clearText) {
    if (sender == null) {
        logger.debug("mail sender is null, not sending new user / password change notification");
        return;/*from   w w  w  .  j  av  a 2  s  .  c  o  m*/
    }
    logger.debug("attempting to send mail for user password");
    String localeString = user.getLocale();
    Locale locale = null;
    if (localeString == null) {
        locale = defaultLocale;
    } else {
        locale = StringUtils.parseLocaleString(localeString);
    }
    MimeMessage message = sender.createMimeMessage();
    MimeMessageHelper helper = new MimeMessageHelper(message, "UTF-8");
    try {
        helper.setTo(user.getEmail());
        helper.setSubject(prefix + " " + fmt("loginMailSubject", locale));
        StringBuffer sb = new StringBuffer();
        sb.append("<p>" + fmt("loginMailGreeting", locale) + " " + user.getName() + ",</p>");
        sb.append("<p>" + fmt("loginMailLine1", locale) + "</p>");
        sb.append("<table class='jtrac'>");
        sb.append("<tr><th style='background: #CCCCCC'>" + fmt("loginName", locale)
                + "</th><td style='border: 1px solid black'>" + user.getLoginName() + "</td></tr>");
        sb.append("<tr><th style='background: #CCCCCC'>" + fmt("password", locale)
                + "</th><td style='border: 1px solid black'>" + clearText + "</td></tr>");
        sb.append("</table>");
        sb.append("<p>" + fmt("loginMailLine2", locale) + "</p>");
        sb.append("<p><a href='" + url + "'>" + url + "</a></p>");
        helper.setText(addHeaderAndFooter(sb), true);
        helper.setSentDate(new Date());
        // helper.setCc(from);
        helper.setFrom(from);
        sendInNewThread(message);
    } catch (Exception e) {
        logger.error("failed to prepare e-mail", e);
    }
}

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

/** {@inheritDoc} */
@Override/*w ww .  j a  va2  s .  c  o  m*/
public void sendEmail(final String email, final String subject, final Map context, final String templateName) {

    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(email);
            message.setSubject(subject);

            final Locale locale = LocaleContextHolder.getLocale();

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

            final StringWriter textWriter = new StringWriter();
            try {
                textTemplate.process(context, textWriter);
            } catch (TemplateException e) {
                throw new MailPreparationException("Can't generate email body.", e);
            }

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

            final StringWriter htmlWriter = new StringWriter();
            try {
                htmlTemplate.process(context, 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:org.brushingbits.jnap.email.Email.java

public void prepare(MimeMessage mimeMessage) throws Exception {
    final EmailAccountInfo acc = getAccountInfo();
    boolean multipart = StringUtils.isNotBlank(getHtmlText())
            || (getInlineResources() != null && getInlineResources().size() > 0)
            || (getAttachments() != null && getAttachments().size() > 0);
    MimeMessageHelper helper = new MimeMessageHelper(mimeMessage, multipart);
    helper.setTo(getTo());/*from w w  w .j a  v  a2  s  .com*/
    if (getCc() != null) {
        helper.setCc(getCc());
    }
    if (getBcc() != null) {
        helper.setBcc(getBcc());
    }
    helper.setSentDate(new Date());
    helper.setSubject(i18nTextProvider.getText(getSubject()));

    // sender info
    //      if (acc != null && StringUtils.isNotBlank(acc.getFromName())) {
    //         helper.setFrom(getFrom(), i18nTextProvider.getText(acc.getFromName()));
    //      } else {
    //         helper.setFrom(getFrom());
    //      }
    if (acc != null && StringUtils.isNotBlank(acc.getReplyToEmailAddress())) {
        if (StringUtils.isNotBlank(acc.getReplyToName())) {
            helper.setReplyTo(acc.getReplyToEmailAddress(), acc.getReplyToName());
        } else {
            helper.setReplyTo(acc.getReplyToEmailAddress());
        }
    }

    final boolean hasHtmlText = StringUtils.isNotBlank(getHtmlText());
    final boolean hasText = StringUtils.isNotBlank(getText());
    if (hasHtmlText && hasText) {
        helper.setText(getText(), getHtmlText());
    } else if (hasHtmlText || hasText) {
        helper.setText(hasHtmlText ? getHtmlText() : getText());
    }

    // add inline resources
    final Map<String, Resource> inlineRes = this.getInlineResources();
    if (inlineRes != null) {
        for (String cid : inlineRes.keySet()) {
            helper.addInline(cid, inlineRes.get(cid));
        }
    }
    // add attachments
    final Map<String, Resource> attachments = this.getAttachments();
    if (attachments != null) {
        for (String attachmentName : attachments.keySet()) {
            helper.addAttachment(attachmentName, attachments.get(attachmentName));
        }
    }
}

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);
            }//  ww  w.ja v  a 2 s  . c o m

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