邮件错误:javax.mail.AuthenticationFailedException: wrong password
这几天遇到一个问题,用javamail写的一个邮件发送程序,在163、126等邮箱进行收发测试时都没有问题,但偏偏用于收发客户的服务器上的邮件时,始终报密码错误这个错误(javax.mail.AuthenticationFailedException: wrong password)。用outlook express测试发现却完全没有问题。接收时报的错误如下:
DEBUG: setDebug: JavaMail version 1.3.1DEBUG: getProvider() returning javax.mail.Provider[STORE,pop3,com.sun.mail.pop3.POP3Store,Sun Microsystems, Inc]DEBUG POP3: connecting to host "mail.kingkey.com.cn", port 110S: +OK POP3 on WebEasyMail [3.5.3.1] ready. http://www.51webmail.comC: USER oa@kingkey.com.cnS: +OK user acceptedC: PASS oaS: -ERR wrong passwordC: QUITS: +OK closing connection09:51:06,859 ERROR [STDERR] javax.mail.AuthenticationFailedException: wrong password09:51:06,859 ERROR [STDERR] at com.sun.mail.pop3.POP3Store.protocolConnect(POP3Store.java:104)09:51:06,859 ERROR [STDERR] at javax.mail.Service.connect(Service.java:255)09:51:06,859 ERROR [STDERR] at javax.mail.Service.connect(Service.java:134)......
?发送时报的错误如下:
DEBUG: setDebug: JavaMail version 1.3.1get the session successfulDEBUG: getProvider() returning javax.mail.Provider[TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Sun Microsystems, Inc]DEBUG SMTP: useEhlo true, useAuth trueDEBUG SMTP: trying to connect to host "mail.kingkey.com.cn", port 25220 ESMTP on WebEasyMail [3.5.3.1] ready. http://www.51webmail.comDEBUG SMTP: connected to host "mail.kingkey.com.cn", port: 25EHLO Tom250-SIZE250 AUTH LOGINDEBUG SMTP: Found extension "AUTH", arg "LOGIN"DEBUG SMTP: Attempt to authenticateAUTH LOGIN334 VXNlcm5hbWU6b2FAa2luZ2tleS5jb20uY24=334 UGFzc3dvcmQ6b2E=535 authentication failed.10:56:59,093 ERROR [STDERR] javax.mail.AuthenticationFailedException10:56:59,093 ERROR [STDERR] at javax.mail.Service.connect(Service.java:264)10:56:59,093 ERROR [STDERR] at javax.mail.Service.connect(Service.java:134)......
?
为什么用outlook express可以正常收发,而用javamail不行呢?搜了很久都搜不到答案,最后,干脆下了个网络包捕捉程序:sniffer,看看outlook express是怎么发送的。
?
捕捉后比较才发现,邮件的用户名不能用全名,如oa@kingkey.com.cn,这样会导致验证密码错误。而去掉用户全名后,如用:oa,这时邮件正常收发了!
?
一个小问题,搞了我3天,希望给以后有类似经历的朋友,少走点弯路。
赞一个~!