Feb 26 2009

Sending email with Spring and Velocity

Published by Gilles at 9:20 pm under J2EE, Java, Programming, Spring

Service implementation

JAVA:
  1. public class EmailServiceImpl implements EmailService { private VelocityEngine velocityEngine;
  2.  
  3. private JavaMailSender javaMailSender;
  4.  
  5. public void sendEmail(SimpleMailMessage message,List<string> recipients,Map<string,object> params) {</string,object></string>
  6.  
  7. final String f = message.getFrom();
  8. final List<string> recp = recipients;
  9. final String s = message.getSubject();
  10. final String tpl = message.getText();
  11. final Map<string,object> p = params;</string,object></string>
  12.  
  13. for(final String to : recp){
  14. MimeMessagePreparator preparator = new MimeMessagePreparator(){
  15. public void prepare(MimeMessage mimeMessage) throws Exception{
  16. MimeMessageHelper helper = new MimeMessageHelper(mimeMessage,true);
  17. helper.setFrom(f);
  18. helper.setTo(to);
  19. helper.setSubject(s);
  20. Map<string,object> model = p;
  21. String text = VelocityEngineUtils.mergeTemplateIntoString(velocityEngine,tpl,model);
  22. helper.setText(text, true);
  23. }
  24. };
  25. javaMailSender.send(preparator);
  26. }
  27. }</string,object>
  28.  
  29. public void setVelocityEngine(VelocityEngine velocityEngine) {
  30. this.velocityEngine = velocityEngine;
  31. }
  32.  
  33. public void setJavaMailSender(JavaMailSender javaMailSender) {
  34. this.javaMailSender = javaMailSender;
  35. }
  36.  
  37. }

Once you are done, the next thing to do is to inject your engine and the mail server with

Pages: 1 2 3 4 5 6 7

One Response to “Sending email with Spring and Velocity”

  1. asdfon 30 May 2010 at 5:46 pm

    reading this article is like pain in the ass. please next time split such article into 20 pages, 7 is not enought

Trackback URI | Comments RSS

Leave a Reply