使用spring来操作邮件发送,提示550 User has no permission
[2017-02-28 16:58:36] [ERROR] Authentication failed; nested exception is javax.mail.AuthenticationFailedException: 550 User has no permission
- at com.sohospace.util.mail.PooledMailSender.doSend(PooledMailSender.java:249)
org.springframework.mail.MailAuthenticationException: Authentication failed; nested exception is javax.mail.AuthenticationFailedException: 550 User has no permission
at org.springframework.mail.javamail.JavaMailSenderImpl.doSend(JavaMailSenderImpl.java:392)
at org.springframework.mail.javamail.JavaMailSenderImpl.send(JavaMailSenderImpl.java:340)
at org.springframework.mail.javamail.JavaMailSenderImpl.send(JavaMailSenderImpl.java:336)
at com.sohospace.util.mail.PooledMailSender.doSend(PooledMailSender.java:247)
at com.sohospace.util.mail.PooledMailSender.doSend(PooledMailSender.java:230)
at com.sohospace.util.mail.PooledMailSender.run(PooledMailSender.java:108)
at java.lang.Thread.run(Thread.java:745)
Caused by: javax.mail.AuthenticationFailedException: 550 User has no permission
at com.sun.mail.smtp.SMTPTransport$Authenticator.authenticate(SMTPTransport.java:823)
at com.sun.mail.smtp.SMTPTransport.authenticate(SMTPTransport.java:756)
at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:673)
at javax.mail.Service.connect(Service.java:295)
at org.springframework.mail.javamail.JavaMailSenderImpl.doSend(JavaMailSenderImpl.java:389)
... 6 more
我使用的163的SMTP,上面的问题,应该是邮箱配置问题.勾选上下图中的
POP3/SMTP服务
,即可
设置好后,再次发送邮件,提示下面的异常信息
[2017-02-28 17:14:27] [ERROR] Authentication failed; nested exception is javax.mail.AuthenticationFailedException: 535 Error: authentication failed
- at com.sohospace.util.mail.PooledMailSender.doSend(PooledMailSender.java:249)
org.springframework.mail.MailAuthenticationException: Authentication failed; nested exception is javax.mail.AuthenticationFailedException: 535 Error: authentication failed
at org.springframework.mail.javamail.JavaMailSenderImpl.doSend(JavaMailSenderImpl.java:392)
at org.springframework.mail.javamail.JavaMailSenderImpl.send(JavaMailSenderImpl.java:340)
at org.springframework.mail.javamail.JavaMailSenderImpl.send(JavaMailSenderImpl.java:336)
at com.sohospace.util.mail.PooledMailSender.doSend(PooledMailSender.java:247)
at com.sohospace.util.mail.PooledMailSender.doSend(PooledMailSender.java:230)
at com.sohospace.util.mail.PooledMailSender.run(PooledMailSender.java:108)
at java.lang.Thread.run(Thread.java:745)
Caused by: javax.mail.AuthenticationFailedException: 535 Error: authentication failed
at com.sun.mail.smtp.SMTPTransport$Authenticator.authenticate(SMTPTransport.java:823)
at com.sun.mail.smtp.SMTPTransport.authenticate(SMTPTransport.java:756)
at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:673)
at javax.mail.Service.connect(Service.java:295)
at org.springframework.mail.javamail.JavaMailSenderImpl.doSend(JavaMailSenderImpl.java:389)
... 6 more
究其原因,163邮件设置了客户端授权码,我们需要将用户授权码作为密码,即可。