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

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

Introduction

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

Prototype

MimeMessagePreparator

Source Link

Usage

From source file:net.cit.tetrad.resource.MailResource.java

public void sendMail(final String from, final String[] to, final String subject, final Map<String, Object> map)
        throws Exception {
    log.debug("   Send Email Start " + to);
    if (globalHostName.isEmpty())
        globalHostName = mainDao.getGlobalHostname();
    MimeMessagePreparator preparator = new MimeMessagePreparator() {
        public void prepare(MimeMessage mimeMessage) throws Exception {

            Locale locale = Locale.getDefault();
            String vmFileName = "net/cit/tetrad/template/mongofail.vm";
            String subjectStr = subject;
            if (locale.toString().equals("ko_KR") || locale.toString().equals("ko")) {
                vmFileName = "net/cit/tetrad/template/mongofail_ko_KR.vm";
                subjectStr = " ? ";
            }/*from   w w  w.  jav a2  s .  com*/

            String mailBody = VelocityEngineUtils.mergeTemplateIntoString(velocityEngine, vmFileName, "UTF-8",
                    map);
            MimeMessageHelper message = new MimeMessageHelper(mimeMessage);
            message.setTo(to);
            message.setFrom(from);
            message.setSubject("[" + globalHostName + "] " + subjectStr);
            message.setText(mailBody, true);
        }
    };
    mailSender.send(preparator);
    log.debug("   End Email Start " + to);
}

From source file:jedai.business.JRegistrationService.java

/**
 * @param user// www.  jav a2s. co m
 */
protected void sendRequestPasswordEmail(final Users user) {
    MimeMessagePreparator preparator = new MimeMessagePreparator() {
        public void prepare(MimeMessage mimeMessage) throws Exception {
            MimeMessageHelper message = new MimeMessageHelper(mimeMessage);
            message.setTo("dominick@infrared5.com");
            message.setFrom("daccattato@infrared5.com"); // could be parameterized...
            Map<String, Users> model = new HashMap<String, Users>();
            model.put("user", user);
            String text = VelocityEngineUtils.mergeTemplateIntoString(velocityEngine, "request-password.vm",
                    model);
            message.setText(text, true);
        }
    };
    this.mailSender.send(preparator);
}

From source file:com.edgenius.core.service.impl.MailEngineService.java

public void sendHtmlMail(final SimpleMailMessage msg, final String templateName, final Map model) {
    final String content = generateContent(templateName, model);

    final String subject = generateContent(getSubjectName(templateName), model);
    try {/*from   www . ja  va 2s . co m*/
        mailSender.send(new MimeMessagePreparator() {
            public void prepare(MimeMessage mimeMsg) throws Exception {
                MimeMessageHelper helper = new MimeMessageHelper(mimeMsg, true, "utf-8");
                helper.setTo(msg.getTo());
                helper.setFrom(msg.getFrom());
                if (msg.getBcc() != null)
                    helper.setBcc(msg.getBcc());
                if (!StringUtils.isBlank(subject))
                    helper.setSubject(subject);
                else
                    helper.setSubject(msg.getSubject());
                helper.setText(content, true);
            }

        });
    } catch (Exception e) {
        log.error("Send HTML mail failed on {}", e.toString(), e);
        log.info("Message subject: {}", subject);
        log.info("Message content: {}", content);
    }
}

From source file:org.cgiar.dapa.ccafs.tpe.service.impl.TPEMailService.java

@Override
public void notifyAdmin(final Map<String, Object> templateVariables) {
    MimeMessagePreparator preparator = new MimeMessagePreparator() {
        public void prepare(MimeMessage mimeMessage) throws Exception {
            MimeMessageHelper message = new MimeMessageHelper(mimeMessage, true);
            message.setTo(supportEmail);
            message.setFrom(new InternetAddress(adminEmail));
            message.setSubject(SUBJECT_ADMIN);
            String body = VelocityEngineUtils.mergeTemplateIntoString(velocityEngine,
                    "templates/notify-admin.vm", "UTF-8", templateVariables);
            log.info(body);//  w w w.  ja  va  2s  .c  o m
            message.setText(body, true);
        }
    };
    this.mailSender.send(preparator);

}

From source file:com.sisrni.service.FreeMarkerMailServiceImpl.java

private MimeMessagePreparator getMessagePreparator(final Object obj) throws Exception {

    try {/*ww  w .  j  a v a  2s  . c  o  m*/

        MimeMessagePreparator preparator = new MimeMessagePreparator() {

            public void prepare(MimeMessage mimeMessage) throws Exception {
                MimeMessageHelper helper = new MimeMessageHelper(mimeMessage, true);

                helper.setSubject(getSubJect());
                //helper.setFrom("tgraduacion01@gmail.com" );
                helper.setTo(getSetToMail());
                helper.setSentDate(new Date());

                Map<String, Object> model = new HashMap<String, Object>();
                model.put("obj", obj);

                String text = geFreeMarkerTemplateContent(model);
                System.out.println("Contenido de plantilla : " + text);

                // use the true flag to indicate you need a multipart message
                helper.setText(text, true);

                //Additionally, let's add a resource as an attachment as well.
                //helper.addAttachment("cutie.png", new ClassPathResource("linux-icon.png"));
            }
        };
        return preparator;
    } catch (Exception ex) {
        throw new Exception(
                "Error class  FreeMarkerMailServiceImpl - getMessagePreparator()\n" + ex.getMessage(),
                ex.getCause());
    }

}

From source file:org.fuin.auction.command.server.base.MailManager.java

/**
 * Creates a welcome mail with a unique identifier to verify the email
 * address.//w  w w  . j av a 2 s  .  co m
 * 
 * @param event
 *            Event to handle.
 */
@EventHandler
public final void handle(final UserCreatedEvent event) {

    if (LOG.isDebugEnabled()) {
        LOG.debug("SEND user created mail to " + event.getEmail() + " [securityToken='"
                + event.getSecurityToken() + "']");
    }

    final MimeMessagePreparator preparator = new MimeMessagePreparator() {
        public void prepare(final MimeMessage mimeMessage) throws Exception {
            final MimeMessageHelper message = new MimeMessageHelper(mimeMessage);
            message.setTo(event.getEmail().toString());
            message.setFrom(mailProperties.getProperty("sender"));
            final Map<String, String> varMap = new HashMap<String, String>();
            varMap.put("email", event.getEmail().toString());
            varMap.put("userName", event.getUserName().toString());
            varMap.put("securityToken", event.getSecurityToken().toString());
            final String text = VelocityEngineUtils.mergeTemplateIntoString(velocityEngine,
                    "user-created-mail.vm", varMap);
            message.setText(text, true);
        }
    };
    this.mailSender.send(preparator);

}

From source file:net.naijatek.myalumni.util.mail.FreeMarkerTemplateMailerImpl.java

public void mail(final String email, final Map map, final String bodyTemplatePrefix,
        final String subjectTemplatePrefix) {
    MimeMessagePreparator preparator = new MimeMessagePreparator() {
        public void prepare(MimeMessage mimeMessage) throws MessagingException, IOException {
            mimeMessage.setRecipient(Message.RecipientType.TO, new InternetAddress(email));

            ////from w w  w .j  a  v a  2s  .  c om
            // Get the subject
            //
            //BodyPart subjectPart = new MimeBodyPart();
            Template subjectTextTemplate = configuration.getTemplate(subjectTemplatePrefix);
            final StringWriter subjectTextWriter = new StringWriter();

            try {
                subjectTextTemplate.process(map, subjectTextWriter);
            } catch (TemplateException e) {
                throw new MailPreparationException("Can't generate Subject Text", e);
            }
            mimeMessage.setSubject(subjectTextWriter.toString());

            //
            // Create a "text" Multipart message
            //

            Template bodyTextTemplate = configuration.getTemplate(bodyTemplatePrefix);
            final StringWriter bodyTextWriter = new StringWriter();

            try {
                bodyTextTemplate.process(map, bodyTextWriter);
            } catch (TemplateException e) {
                throw new MailPreparationException("Can't generate Body Text", e);
            }
            mimeMessage.setText(bodyTextWriter.toString());

            /*                // @TODO - This part handles sending an attachement
                            textPart.setDataHandler(new DataHandler(new DataSource() {
            public InputStream getInputStream() throws IOException {
                return new StringBufferInputStream(bodyTextWriter.toString());
            }
            public OutputStream getOutputStream() throws IOException {
                throw new IOException("Read-only data");
            }
            public String getContentType() {
                return "text/plain";
            }
            public String getName() {
                return "main";
            }
                            }));
                            mp.addBodyPart(textPart);*/

            /*                // Create a "HTML" Multipart message
                            Multipart htmlContent = new MimeMultipart("related");
                            BodyPart htmlPage = new MimeBodyPart();
                            Template htmlTemplate = configuration.getTemplate(templatePrefix + "-html.ftl");
                            final StringWriter htmlWriter = new StringWriter();
                            try {
            htmlTemplate.process(map, htmlWriter);
                            } catch (TemplateException e) {
            throw new MailPreparationException("Can't generate HTML subscription mail", e);
                            }
                            htmlPage.setDataHandler(new DataHandler(new DataSource() {
            public InputStream getInputStream() throws IOException {
                return new StringBufferInputStream(htmlWriter.toString());
            }
            public OutputStream getOutputStream() throws IOException {
                throw new IOException("Read-only data");
            }
            public String getContentType() {
                return "text/html";
            }
            public String getName() {
                return "main";
            }
                            }));
                            htmlContent.addBodyPart(htmlPage);
                            BodyPart htmlPart = new MimeBodyPart();
                            htmlPart.setContent(htmlContent);
                            mp.addBodyPart(htmlPart);
                    
                            mimeMessage.setContent(mp);*/
        }
    };
    mailSender.send(preparator);
}

From source file:cherry.foundation.mail.MailSendHandlerImpl.java

private void send(final SimpleMailMessage msg, final AttachmentPreparator preparator) {
    if (preparator == null) {
        mailSender.send(msg);/* w  ww  .  j  a  v a  2 s  . com*/
    } else {
        mailSender.send(new MimeMessagePreparator() {
            @Override
            public void prepare(MimeMessage mimeMessage) throws Exception {
                MimeMessageHelper helper = new MimeMessageHelper(mimeMessage, true);
                helper.setTo(msg.getTo());
                helper.setCc(msg.getCc());
                helper.setBcc(msg.getBcc());
                helper.setFrom(msg.getFrom());
                helper.setSubject(msg.getSubject());
                helper.setText(msg.getText());
                preparator.prepare(new Attachment(helper));
            }
        });
    }
}

From source file:fr.mycellar.application.user.impl.ResetPasswordRequestServiceImpl.java

@Override
public void createAndSendEmail(User user, String url) {
    // Create request
    ResetPasswordRequest request = new ResetPasswordRequest();
    request.setDateTime(new LocalDateTime());
    request.setKey(new String(Base64.encodeBase64(secureRandom.generateSeed(128), false)).substring(0, 32));
    request.setUser(user);//w  w  w .j  av a  2 s .co m
    // Merge it in repository
    resetPasswordRequestRepository.save(request);
    // Send email to email
    final String email = user.getEmail();
    final String address;
    try {
        address = url + "?key=" + URLEncoder.encode(request.getKey(), "UTF-8");
    } catch (UnsupportedEncodingException e) {
        throw new RuntimeException("UTF-8 encoding not supported.", e);
    }

    MimeMessagePreparator mimeMessagePreparator = new MimeMessagePreparator() {
        @Override
        public void prepare(MimeMessage mimeMessage) throws Exception {
            MimeMessageHelper helper = new MimeMessageHelper(mimeMessage);
            helper.setTo(email);
            helper.setFrom(configurationService.getMailAddressSender());
            helper.setSubject("Changement de mot de passe");
            helper.setText("Allez  l'adresse suivante : " + address);
        }
    };
    try {
        javaMailSender.send(mimeMessagePreparator);
    } catch (Exception e) {
        throw new RuntimeException("Cannot send email.", e);
    }
}

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

private void sendText(final String subject, final String nonHtml) {
    MimeMessagePreparator preparator = new MimeMessagePreparator() {
        @Override//from  w w w  .j a va 2s .  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);
}