javamail smtp.live.com timeout in ubuntu-Collection of common programming errors


  • Vitor Mendes

    I am having a problem with JavaMail. When I try to send an e-mail from localhost (always using tomcat7) with the configurations below:

    
        
        
        
        
        
            
                smtp
                true
                true
                true
                10000
            
        
    
    

    The e-mail is sent, getting the following with DEBUG:

    DEBUG: JavaMail version 1.4.3
    DEBUG: successfully loaded resource: /META-INF/javamail.default.providers
    DEBUG: Tables of loaded providers
    DEBUG: Providers Listed By Class Name: {com.sun.mail.smtp.SMTPSSLTransport=javax.mail.Provider[TRANSPORT,smtps,com.sun.mail.smtp.SMTPSSLTransport,Sun Microsystems, Inc], com.sun.mail.smtp.SMTPTransport=javax.mail.Provider[TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Sun Microsystems, Inc], com.sun.mail.imap.IMAPSSLStore=javax.mail.Provider[STORE,imaps,com.sun.mail.imap.IMAPSSLStore,Sun Microsystems, Inc], com.sun.mail.pop3.POP3SSLStore=javax.mail.Provider[STORE,pop3s,com.sun.mail.pop3.POP3SSLStore,Sun Microsystems, Inc], com.sun.mail.imap.IMAPStore=javax.mail.Provider[STORE,imap,com.sun.mail.imap.IMAPStore,Sun Microsystems, Inc], com.sun.mail.pop3.POP3Store=javax.mail.Provider[STORE,pop3,com.sun.mail.pop3.POP3Store,Sun Microsystems, Inc]}
    DEBUG: Providers Listed By Protocol: {imaps=javax.mail.Provider[STORE,imaps,com.sun.mail.imap.IMAPSSLStore,Sun Microsystems, Inc], imap=javax.mail.Provider[STORE,imap,com.sun.mail.imap.IMAPStore,Sun Microsystems, Inc], smtps=javax.mail.Provider[TRANSPORT,smtps,com.sun.mail.smtp.SMTPSSLTransport,Sun Microsystems, Inc], pop3=javax.mail.Provider[STORE,pop3,com.sun.mail.pop3.POP3Store,Sun Microsystems, Inc], pop3s=javax.mail.Provider[STORE,pop3s,com.sun.mail.pop3.POP3SSLStore,Sun Microsystems, Inc], smtp=javax.mail.Provider[TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Sun Microsystems, Inc]}
    DEBUG: successfully loaded resource: /META-INF/javamail.default.address.map
    DEBUG: getProvider() returning javax.mail.Provider[TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Sun Microsystems, Inc]
    DEBUG SMTP: useEhlo true, useAuth true
    DEBUG SMTP: trying to connect to host "smtp.live.com", port 587, isSSL false
    220 BLU0-SMTP55.phx.gbl Microsoft ESMTP MAIL Service, Version: 6.0.3790.4675 ready at  Mon, 17 Mar 2014 06:40:21 -0700 
    DEBUG SMTP: connected to host "smtp.live.com", port: 587
    
    EHLO 192.168.2.4
    250-BLU0-SMTP55.phx.gbl Hello [186.247.127.93]
    250-TURN
    250-SIZE 41943040
    250-ETRN
    250-PIPELINING
    250-DSN
    250-ENHANCEDSTATUSCODES
    250-8bitmime
    250-BINARYMIME
    250-CHUNKING
    250-VRFY
    250-TLS
    250-STARTTLS
    250 OK
    DEBUG SMTP: Found extension "TURN", arg ""
    DEBUG SMTP: Found extension "SIZE", arg "41943040"
    DEBUG SMTP: Found extension "ETRN", arg ""
    DEBUG SMTP: Found extension "PIPELINING", arg ""
    DEBUG SMTP: Found extension "DSN", arg ""
    DEBUG SMTP: Found extension "ENHANCEDSTATUSCODES", arg ""
    DEBUG SMTP: Found extension "8bitmime", arg ""
    DEBUG SMTP: Found extension "BINARYMIME", arg ""
    DEBUG SMTP: Found extension "CHUNKING", arg ""
    DEBUG SMTP: Found extension "VRFY", arg ""
    DEBUG SMTP: Found extension "TLS", arg ""
    DEBUG SMTP: Found extension "STARTTLS", arg ""
    DEBUG SMTP: Found extension "OK", arg ""
    STARTTLS
    220 2.0.0 SMTP server ready
    EHLO 192.168.2.4
    250-BLU0-SMTP55.phx.gbl Hello [191.223.124.12]
    250-TURN
    250-SIZE 41943040
    250-ETRN
    250-PIPELINING
    250-DSN
    250-ENHANCEDSTATUSCODES
    250-8bitmime
    250-BINARYMIME
    250-CHUNKING
    250-VRFY
    250-AUTH LOGIN PLAIN XOAUTH2
    250 OK
    DEBUG SMTP: Found extension "TURN", arg ""
    DEBUG SMTP: Found extension "SIZE", arg "41943040"
    DEBUG SMTP: Found extension "ETRN", arg ""
    DEBUG SMTP: Found extension "PIPELINING", arg ""
    DEBUG SMTP: Found extension "DSN", arg ""
    DEBUG SMTP: Found extension "ENHANCEDSTATUSCODES", arg ""
    DEBUG SMTP: Found extension "8bitmime", arg ""
    DEBUG SMTP: Found extension "BINARYMIME", arg ""
    DEBUG SMTP: Found extension "CHUNKING", arg ""
    DEBUG SMTP: Found extension "VRFY", arg ""
    DEBUG SMTP: Found extension "AUTH", arg "LOGIN PLAIN XOAUTH2"
    DEBUG SMTP: Found extension "OK", arg ""
    DEBUG SMTP: Attempt to authenticate
    DEBUG SMTP: check mechanisms: LOGIN PLAIN DIGEST-MD5 NTLM 
    AUTH LOGIN
    334 dadADASDAe21
    JAMre5LygCDrQGFlcm9isKAlvd0=
    334 asdADSdasr32
    aSFASFwqFqwF9f3FASf221F==
    235 2.7.0 Authentication succeeded
    DEBUG SMTP: use8bit false
    MAIL FROM:< [email protected]>
    250 2.1.0 [email protected] OK
    RCPT TO:< [email protected]>
    250 2.1.5 [email protected] 
    DEBUG SMTP: Verified Addresses
    DEBUG SMTP:   [email protected]
    DATA
    354 Start mail input; end with .
    Date: Mon, 17 Mar 2014 10:40:55 -0300 (BRT)
    From: [email protected]
    To: [email protected]
    Message-ID: 
    Subject: MESSAGE SUBJECT
    MIME-Version: 1.0
    Content-Type: multipart/mixed; 
        boundary="----=_Part_0_1681003437.1395063614295"
    
    ------=_Part_0_1681003437.1395063614295
    Content-Type: multipart/related; 
        boundary="----=_Part_1_11750387.1395063614333"
    
    ------=_Part_1_11750387.1395063614333
    Content-Type: text/html; charset=us-ascii
    Content-Transfer-Encoding: 7bit
    
    AN HTML MESSAGE
    ------=_Part_1_11750387.1395063614333--
    
    ------=_Part_0_1681003437.1395063614295--
    .
    250 2.6.0   Queued mail for delivery
    QUIT
    221 2.0.0 BLU0-SMTP55.phx.gbl Service closing transmission channel
    

    The problem is, when I compile and send to my Ubuntu server, I get the following error:

    DEBUG: Providers Listed By Protocol: {imaps=javax.mail.Provider[STORE,imaps,com.sun.mail.imap.IMAPSSLStore,Sun Microsystems, Inc], imap=javax.mail.Provider[STORE,imap,com.sun.mail.imap.IMAPStore,Sun Microsystems, Inc], smtps=javax.mail.Provider[TRANSPORT,smtps,com.sun.mail.smtp.SMTPSSLTransport,Sun Microsystems, Inc], pop3=javax.mail.Provider[STORE,pop3,com.sun.mail.pop3.POP3Store,Sun Microsystems, Inc], pop3s=javax.mail.Provider[STORE,pop3s,com.sun.mail.pop3.POP3SSLStore,Sun Microsystems, Inc], smtp=javax.mail.Provider[TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Sun Microsystems, Inc]}
    DEBUG: successfully loaded resource: /META-INF/javamail.default.address.map
    DEBUG: getProvider() returning javax.mail.Provider[TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Sun Microsystems, Inc]
    DEBUG SMTP: useEhlo true, useAuth true
    DEBUG SMTP: trying to connect to host "smtp.live.com", port 587, isSSL false
    catching error with stack trace:
    org.springframework.mail.MailSendException: Mail server connection failed; nested exception is javax.mail.MessagingException: Could not connect to SMTP host: smtp.live.com, port: 587;
      nested exception is:
        java.net.ConnectException: Connection timed out. Failed messages: javax.mail.MessagingException: Could not connect to SMTP host: smtp.live.com, port: 587;
      nested exception is:
        java.net.ConnectException: Connection timed out; message exception details (1) are:
    Failed message 1:
    javax.mail.MessagingException: Could not connect to SMTP host: smtp.live.com, port: 587;
      nested exception is:
        java.net.ConnectException: Connection timed out
        at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:1706)
        at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:525)
        at javax.mail.Service.connect(Service.java:291)
        at org.springframework.mail.javamail.JavaMailSenderImpl.doSend(JavaMailSenderImpl.java:389)
        at org.springframework.mail.javamail.JavaMailSenderImpl.send(JavaMailSenderImpl.java:340)
        at org.springframework.mail.javamail.JavaMailSenderImpl.send(JavaMailSenderImpl.java:355)
        at org.springframework.mail.javamail.JavaMailSenderImpl.send(JavaMailSenderImpl.java:344)
        at com.mydomain.model.general.Mailer$2.run(Mailer.java:48)
        at java.lang.Thread.run(Thread.java:679)
    Caused by: java.net.ConnectException: Connection timed out
        at java.net.PlainSocketImpl.socketConnect(Native Method)
        at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:327)
        at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:193)
        at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:180)
        at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:384)
        at java.net.Socket.connect(Socket.java:546)
        at java.net.Socket.connect(Socket.java:495)
        at com.sun.mail.util.SocketFetcher.createSocket(SocketFetcher.java:284)
        at com.sun.mail.util.SocketFetcher.getSocket(SocketFetcher.java:227)
        at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:1672)
        ... 8 more
    

    Does anybody have any idea on how I can solve this??

    Thanks!