javaMail常见有关问题处理方法

javaMail常见问题处理方法
   最近开发一个使用javamail发邮件的功能,遇到了一些小问题颇费一番周折,过后总结如下:

      通过javamail发邮件的程序网上很多,随便弄一个下来配置完却不一定好用,通常大家会遇到的问题有 Could not connect to SMTP host 或者Connection timed out再或者Unknown SMTP host等错误,让人不知所措。

      我的经验是首先使用telnet进行测试如果telnet测试不通过,发邮件肯定不会成功的。

      telnet的测试命令为:telnet host 25其中host为邮件服务器地址 。

      例如 :telnet smtp.163.com 25

      有可能会出现下面的结果: 220 163.com Anti-spam GT for Coremail System (163com[20081010]) 421 closing transmission channel 这都是地址不通的结果,这时需要查看自己的防火墙配置是否关闭了端口25

      例如 :telnet mail02 25(mail02为公司内部的邮件服务器地址)

      出现如下提示: 220 mail02.HOLD.FOUNDER.COM Microsoft ESMTP MAIL Service, Version: 6.0.3790.3959 ready at Tue, 17 Feb 2009 09:58:29 +0800 这证明已经通了。

      邮件服务器地址如果通的话那就是程序的问题了,就比较容易解决了。通常查看自己邮箱的用户名、地址或者密码等信息是否错误。

原文出自http://jiangzhenghua.iteye.com/blog/333944