zsisgood

导航

 

今天花了很长时间看了javamail 的机制,然后又花了一上午时间写完了完整代码(仿照前辈代码),但是一直没有成功,因为我想在web中实现邮件的发送,所以就一直在不停的找错误,现在错误终于找到了。

错误1:

  发送人的邮箱没有开通smtp和pop3协议(后有详细说明)。具体方法就是打开你的邮箱,然后在设置中开通此协议(可以百度,这里就不赘述了)

错误2:

  在邮件会话属性中没有正确定义。

public Properties getProperties(){   
      Properties p = new Properties();   
      p.put("mail.smtp.host", this.mailServerHost);   
      p.put("mail.smtp.port", this.mailServerPort);   
      p.put("mail.smtp.auth", validate ? "true" : "false");   
      return p;   
    }   

如上代码,p.put("mail.smtp.auth",validate),一开始我就这么写的,但是一直不成功,抛出异常信息是:com.sun.mail.smtp.SMTPSendFailedException: 503 Error: need EHLO and AUTH first !
后来百度的一通才知道p.put("mail.smtp.auth","true"//"flase"); 参数是以字符串形式给出的(我是这样理解的,但是看源文件,发现这个Properties.put方法继承了哈希表,但我还是这么理解虽然哈希表中的类型是object)。

 

以上两个错误发表出来希望大家能够注意 ,小白一枚 ,还请大神不吝赐教。

另:javamail的机制与实现我就引用一下大神写的一篇文章吧 http://www.cnblogs.com/mjorcen/p/4001260.html

javamail相关内容(概述,协议,对象):http://blog.csdn.net/neo_liu0000/article/details/6668622

最后,我还是再去写一遍程序吧。

posted on 2015-11-23 15:41  zsisgood  阅读(239)  评论(0)    收藏  举报