Saltar al contenido

MailConnectException: no se pudo conectar al host, puerto: smtp.gmail.com, 465; tiempo de espera -1

Nuestro equipo de redactores ha estado largas horas investigando respuestas a tus preguntas, te regalamos la respuestas y nuestro deseo es que sea de mucha apoyo.

Solución:

Sé que esta es una respuesta muy tardía, pero quiero compartir mi experiencia cuando me enfrento al mismo problema e intenté casi Java api de correo central, Apache api de correo y Spring También por MimeMessage.

Intenté más de 50 veces con Java JDK 1.7.0_80 y falló repetidamente con la excepción sujeta arriba, luego me mudé a JDK 1.8.0_151.

Ahora, antes de ilustrar el código fuente, me gustaría compartir mi configuración.

Ir a Gmail > Settings > Other Google Account settings debajo Accounts and Import > Sign-in & security.

Permitir aplicaciones menos seguras: DESACTIVADO (Significa que mi aplicación no es menos segura)

Verificación en dos pasos: desactivada

Contraseñas de la aplicación (Haga clic en él y Google generará una contraseña de 16 caracteres para usted, luego, cambie su contraseña de Gmail con esta contraseña de 16 caracteres (que no tiene espacio)).

Contraseña de la aplicación generada por Google

Ahora, mi código fuente es:

import org.springframework.mail.javamail.JavaMailSenderImpl;
import org.springframework.mail.javamail.MimeMessageHelper;

import javax.mail.MessagingException;
import javax.mail.internet.MimeMessage;
import javax.swing.JOptionPane;
import java.util.List;
import java.util.Properties;

public class Email 

    public final void prepareAndSendEmail(String htmlMessage, String toMailId) 

        final OneMethod oneMethod = new OneMethod();
        final List resourceList = oneMethod.getValidatorResource();

        JavaMailSenderImpl mailSender = new JavaMailSenderImpl();
        mailSender.setHost("smtp.gmail.com");
        mailSender.setPort(465);

        mailSender.setUsername(String.valueOf(resourceList.get(0)));
        mailSender.setPassword(String.valueOf(resourceList.get(1)));

        //from email id and password
        System.out.println("Username is : " + String.valueOf(resourceList.get(0)).split("@")[0]);
        System.out.println("Password is : " + String.valueOf(resourceList.get(1)));

        Properties mailProp = mailSender.getJavaMailProperties();
        mailProp.put("mail.transport.protocol", "smtp");
        mailProp.put("mail.smtp.auth", "true");
        mailProp.put("mail.smtp.starttls.enable", "true");
        mailProp.put("mail.smtp.starttls.required", "true");
        mailProp.put("mail.debug", "true");
        mailProp.put("mail.smtp.ssl.enable", "true");

        MimeMessage mimeMessage = mailSender.createMimeMessage();
        try 
            MimeMessageHelper helper = new MimeMessageHelper(mimeMessage, true);
            helper.setTo(toMailId);
            helper.setSubject("Welcome to Subject Part");
            helper.setText(htmlMessage, true);

            //Checking Internet Connection and then sending the mail
            if(OneMethod.isNetConnAvailable())
                mailSender.send(mimeMessage);
            else
                JOptionPane.showMessageDialog(null, "No Internet Connection Found...");
         catch (MessagingException e) 
            e.printStackTrace();
        

    


y el Spring mail Los registros de depuración se indican a continuación:

Username is : exampleusername
Password is : abcdefghijklmnop
DEBUG: JavaMail version 1.6.0
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,Oracle], com.sun.mail.smtp.SMTPTransport=javax.mail.Provider[TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Oracle], com.sun.mail.imap.IMAPSSLStore=javax.mail.Provider[STORE,imaps,com.sun.mail.imap.IMAPSSLStore,Oracle], com.sun.mail.pop3.POP3SSLStore=javax.mail.Provider[STORE,pop3s,com.sun.mail.pop3.POP3SSLStore,Oracle], com.sun.mail.imap.IMAPStore=javax.mail.Provider[STORE,imap,com.sun.mail.imap.IMAPStore,Oracle], com.sun.mail.pop3.POP3Store=javax.mail.Provider[STORE,pop3,com.sun.mail.pop3.POP3Store,Oracle]
DEBUG: Providers Listed By Protocol: imaps=javax.mail.Provider[STORE,imaps,com.sun.mail.imap.IMAPSSLStore,Oracle], imap=javax.mail.Provider[STORE,imap,com.sun.mail.imap.IMAPStore,Oracle], smtps=javax.mail.Provider[TRANSPORT,smtps,com.sun.mail.smtp.SMTPSSLTransport,Oracle], pop3=javax.mail.Provider[STORE,pop3,com.sun.mail.pop3.POP3Store,Oracle], pop3s=javax.mail.Provider[STORE,pop3s,com.sun.mail.pop3.POP3SSLStore,Oracle], smtp=javax.mail.Provider[TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Oracle]
DEBUG: successfully loaded resource: /META-INF/javamail.default.address.map
DEBUG: getProvider() returning javax.mail.Provider[TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Oracle]
DEBUG SMTP: useEhlo true, useAuth true
DEBUG SMTP: trying to connect to host "smtp.gmail.com", port 465, isSSL true
220 smtp.gmail.com ESMTP 12sm62330270pfr.147 - gsmtp
DEBUG SMTP: connected to host "smtp.gmail.com", port: 465

EHLO Administrator
250-smtp.gmail.com at your service, [157.48.195.205]
250-SIZE 35882577
250-8BITMIME
250-AUTH LOGIN PLAIN XOAUTH2 PLAIN-CLIENTTOKEN OAUTHBEARER XOAUTH
250-ENHANCEDSTATUSCODES
250-PIPELINING
250-CHUNKING
250 SMTPUTF8
DEBUG SMTP: Found extension "SIZE", arg "35882577"
DEBUG SMTP: Found extension "8BITMIME", arg ""
DEBUG SMTP: Found extension "AUTH", arg "LOGIN PLAIN XOAUTH2 PLAIN-CLIENTTOKEN OAUTHBEARER XOAUTH"
DEBUG SMTP: Found extension "ENHANCEDSTATUSCODES", arg ""
DEBUG SMTP: Found extension "PIPELINING", arg ""
DEBUG SMTP: Found extension "CHUNKING", arg ""
DEBUG SMTP: Found extension "SMTPUTF8", arg ""
DEBUG SMTP: STARTTLS requested but already using SSL
DEBUG SMTP: protocolConnect login, host=smtp.gmail.com, [email protected]
, password= DEBUG SMTP: Attempt to authenticate using mechanisms: LOGIN PLAIN DIGEST-MD5 NTLM XOAUTH2 DEBUG SMTP: Using mechanism LOGIN DEBUG SMTP: AUTH LOGIN command trace suppressed DEBUG SMTP: AUTH LOGIN succeeded DEBUG SMTP: use8bit false MAIL FROM:<[email protected]> 250 2.1.0 OK 12sm62330270pfr.147 - gsmtp RCPT TO:<[email protected]> 250 2.1.5 OK 12sm62330270pfr.147 - gsmtp DEBUG SMTP: Verified Addresses DEBUG SMTP: [email protected] DATA 354 Go ahead 12sm62330270pfr.147 - gsmtp Date: Mon, 19 Feb 2018 18:55:29 +0530 (IST) To: [email protected] Message-ID: <[email protected]> Subject: Welcome to Subject Part MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_Part_0_1884507527.1519046720984" ------=_Part_0_1884507527.1519046720984 Content-Type: multipart/related; boundary="----=_Part_1_1634862487.1519046721031" ------=_Part_1_1634862487.1519046721031 Content-Type: text/html; charset=us-ascii Content-Transfer-Encoding: 7bit Your html page source code is here ------=_Part_1_1634862487.1519046721031-- ------=_Part_0_1884507527.1519046720984-- . 250 2.0.0 OK 1519046738 12sm62330270pfr.147 - gsmtp DEBUG SMTP: message successfully delivered to mail server QUIT 221 2.0.0 closing connection 12sm62330270pfr.147 - gsmtp

Además, verifique que su conexión a Internet, la configuración del antivirus y el acceso al firewall no sean interrumpidos, espero que esto ayude a muchos a no perder el tiempo.

Corrija estos errores comunes de JavaMail.

Siga los consejos de depuración de conexiones en las preguntas frecuentes de JavaMail.

Lo más probable es que haya un firewall o un producto antivirus que le impida conectarse.

Si Tomcat se ejecuta con un administrador de seguridad de Java, las preguntas frecuentes de JavaMail contienen información sobre cómo configurar los permisos de seguridad. Si eso no ayuda, las preguntas frecuentes de JavaMail también contienen información sobre la depuración de problemas con los permisos de seguridad.

¿Mencioné que debería leer las preguntas frecuentes de JavaMail? 🙂

Aquí puedes ver las reseñas y valoraciones de los usuarios

¡Haz clic para puntuar esta entrada!
(Votos: 3 Promedio: 4.3)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *