使用Spring Framework实现email的发送及其问题解决

Spring Framework提供了一个类org.springframework.mail.javamail.JavaMailSenderImpl,对JavaMail的发送进行了封装,被发送的email可以封装成两种对象:org.springframework.mail.SimpleMailMessage和javax.mail.internet.MimeMessage,如果被发送的email没有附件和特殊的字符编码,使用前者可以大大简化程序。

本人使用前者开发应用系统部署到Tomcat容器中,最可能出现的异常是:

..., nested exception is java.lang.NoClassDefFoundError: javax/mail/MessagingException

为了解决这个异常,需要让Tomcat能够找到J2EE的包mail.jar,其中一种解决方案是将mail.jar包复制到Tomcat中的common/lib目录下。