2016-05-18 48 views
1

我试图用我的Spring Boot应用程序连接到我的电子邮件服务器。当我从命令提示符下远程登录本地主机25,我看到下面 -春天 - 无法连接到邮件服务器

220微软ESMTP MAIL服务准备在周三 ,2016年5月18日十一时09分30秒-0400

然而,当我试图从我的连接程序,我看到下面的错误

引起:org.springframework.mail.MailSendException:邮件服务器 连接失败;嵌套异常是javax.mail.MessagingException: 无法连接到SMTP主机:localhost,port:25;嵌套0​​异常是:java.net.SocketException:权限被拒绝:连接。 失败的消息:javax.mail.MessagingException:无法连接到 SMTP主机:localhost,port:25;嵌套的例外是: java.net.SocketException异常:权限被拒绝:连接在

代码

public class MailUtil { 

    @Autowired 
    private JavaMailSender javaMailSender; 

    @Value("${email.from}") 
    private String from; 

    @Value("${email.subject}") 
    private String subject; 


    public void send() { 
     MimeMessage mail = javaMailSender.createMimeMessage(); 
     try { 
      MimeMessageHelper helper = new MimeMessageHelper(mail, true);    
      helper.setTo(emailAddress); 
      helper.setFrom(from); 
      helper.setSubject(subject); 
      helper.setText("Lorem ipsum dolor sit amet [...]"); 
     } catch (MessagingException e) { 
      e.printStackTrace(); 
     } finally {} 
     javaMailSender.send(mail); 
    } 



} 

配置

#Email Settings 
spring.mail.host=localhost 
spring.mail.port=25 

回答

2

试试这个:

  1. 打开防火墙中的端口(25)。
  2. 关闭防病毒软件。
+0

谢谢doge。如果防火墙阻塞,我也不能从我的命令提示符进行远程登录。所以我相信港口是开放的。 –

+0

还有一个类似的问题http://stackoverflow.com/questions/36301545/how-to-solve-sending-the-email-to-the-following-server-failed-socketexception –

+0

谢谢Doge!我认为我的问题是由于#2。我在端口8081而不是25上公开邮件服务,并且能够使用我的java程序发送邮件。 –