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

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

Introduction

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

Prototype

public void setValidateAddresses(boolean validateAddresses) 

Source Link

Document

Set whether to validate all addresses which get passed to this helper.

Usage

From source file:dk.nsi.haiba.epimibaimporter.email.EmailSender.java

private void sendText(final String subject, final String nonHtml) {
    MimeMessagePreparator preparator = new MimeMessagePreparator() {
        @Override// w  w w  .ja  va 2  s  . c  om
        public void prepare(MimeMessage mimeMessage) throws Exception {
            MimeMessageHelper messageHelper = new MimeMessageHelper(mimeMessage, true);
            messageHelper.setValidateAddresses(true);

            String[] split = to_commaseparated.split(",");
            for (String emailAddress : split) {
                emailAddress = emailAddress.trim();
                try {
                    log.trace("adding " + emailAddress);
                    messageHelper.addTo(emailAddress);
                    log.trace("added " + emailAddress);
                } catch (MessagingException e) {
                    log.error("unable to parse email address from " + emailAddress, e);
                }
            }
            messageHelper.setFrom(from);
            messageHelper.setSubject(subject);
            messageHelper.setText(nonHtml, false);
        }
    };
    javaMailSender.send(preparator);
}

From source file:edu.pitt.dbmi.ccd.mail.AbstractBasicMail.java

public void send(String to, String subject, String body, boolean html) throws MessagingException {
    javaMailSender.send(mimeMessage -> {
        MimeMessageHelper message = new MimeMessageHelper(mimeMessage);
        message.setTo(to);//from   w w  w  . j a  v  a 2 s.  c  o m
        message.setSubject(subject);
        message.setText(body, html);
        message.setValidateAddresses(true);
    });
}

From source file:edu.pitt.dbmi.ccd.mail.AbstractBasicMail.java

public void send(String[] to, String subject, String body, boolean html) throws MessagingException {
    javaMailSender.send(mimeMessage -> {
        MimeMessageHelper message = new MimeMessageHelper(mimeMessage);
        message.setTo(to);//www.  j  a v  a  2s. co  m
        message.setSubject(subject);
        message.setText(body, html);
        message.setValidateAddresses(true);
    });
}

From source file:ru.mystamps.web.service.MailServiceImpl.java

@SuppressWarnings("PMD.UseObjectForClearerAPI")
private void sendMail(final String email, final String subject, final String text, final String tag) {

    try {//from  w  w  w . j  a  va2  s  .  c  om
        // We're using MimeMessagePreparator only because of its capability of adding headers.
        // Otherwise we would use SimpleMailMessage class.
        MimeMessagePreparator preparator = new MimeMessagePreparator() {
            @Override
            @SuppressWarnings("PMD.SignatureDeclareThrowsException")
            public void prepare(MimeMessage mimeMessage) throws Exception {
                MimeMessageHelper message = new MimeMessageHelper(mimeMessage, "UTF-8");
                message.setValidateAddresses(true);
                message.setTo(email);
                message.setFrom(new InternetAddress(robotEmail, "My Stamps", "UTF-8"));
                message.setSubject(subject);
                message.setText(text);

                // see: http://documentation.mailgun.com/user_manual.html#sending-via-smtp
                message.getMimeMessage().addHeader("X-Mailgun-Tag", tag);
                if (testMode) {
                    message.getMimeMessage().addHeader("X-Mailgun-Drop-Message", "yes");
                }
            }
        };

        mailer.send(preparator);

    } catch (MailException ex) {
        throw new EmailSendingException("Can't send mail to e-mail " + email, ex);
    }
}

From source file:org.openvpms.web.workspace.reporting.reminder.ReminderEmailProcessor.java

/**
 * Processes a list of reminder events./*from w ww  .jav  a  2s  . co  m*/
 *
 * @param events           the events
 * @param shortName        the report archetype short name, used to select the document template if none specified
 * @param documentTemplate the document template to use. May be {@code null}
 */
protected void process(List<ReminderEvent> events, String shortName, DocumentTemplate documentTemplate) {
    ReminderEvent event = events.get(0);
    Contact contact = event.getContact();
    DocumentTemplateLocator locator = new ContextDocumentTemplateLocator(documentTemplate, shortName,
            getContext());
    documentTemplate = locator.getTemplate();
    if (documentTemplate == null) {
        throw new ReportingException(ReminderMissingDocTemplate);
    }

    try {
        EmailAddress from = addresses.getAddress(event.getCustomer());
        IMObjectBean bean = new IMObjectBean(contact);
        String to = bean.getString("emailAddress");

        MimeMessage message = sender.createMimeMessage();
        MimeMessageHelper helper = new MimeMessageHelper(message, true);
        helper.setValidateAddresses(true);
        helper.setFrom(from.getAddress(), from.getName());
        helper.setTo(to);

        String subject = documentTemplate.getEmailSubject();
        if (StringUtils.isEmpty(subject)) {
            subject = documentTemplate.getName();
        }
        String body = documentTemplate.getEmailText();
        if (StringUtils.isEmpty(body)) {
            throw new ReportingException(TemplateMissingEmailText, documentTemplate.getName());
        }
        helper.setText(body);

        final Document reminder = createReport(events, documentTemplate);
        final DocumentHandler handler = handlers.get(reminder.getName(),
                reminder.getArchetypeId().getShortName(), reminder.getMimeType());

        helper.setSubject(subject);
        helper.addAttachment(reminder.getName(), new InputStreamSource() {
            public InputStream getInputStream() {
                return handler.getContent(reminder);
            }
        });
        sender.send(message);
    } catch (ArchetypeServiceException exception) {
        throw exception;
    } catch (ReminderProcessorException exception) {
        throw exception;
    } catch (ReportingException exception) {
        throw exception;
    } catch (Throwable exception) {
        throw new ReportingException(FailedToProcessReminder, exception, exception.getMessage());
    }
}