javax.mail.MessagingException: не удалось подключиться к узлу SMTP: email-smtp.us-east-1.amazon aws .com, порт: 25; - PullRequest
0 голосов
/ 12 февраля 2020

publi c void emailTest () {

    Properties properties=new Properties();
    properties.put("mail.smtp.host", "email-smtp.us-east-1.amazonaws.com"); 
    properties.put("mail.smtp.port", 587);
    properties.put("mail.debug", "true");
    try{
    Session session=Session.getInstance(properties);

    Message msg=new MimeMessage(session);  

    msg.setFrom(new InternetAddress("test@gmail.com", "Test"));
    msg.setRecipient(RecipientType.TO, new InternetAddress("test@gmail.com", "Test"));
    msg.setSubject("Test Subject");
    msg.setText("Test Mail");
    msg.saveChanges();
    Transport transport=session.getTransport("smtp");
    transport.connect("username","password");
    transport.sendMessage(msg, msg.getAllRecipients());

    transport.close();

    }catch(Exception e){
        e.printStackTrace();
    }
}

POM: com.sun.mail javax.mail 1.5.2 предоставлено

ОТЛАДКА: JavaMail версия 1.4ea

ОТЛАДКА: java .io.FileNotFoundException: /usr/java/jdk1.8.0_144/jre/lib/javamail.providers (нет такого файла или каталога)

ОТЛАДКА:! AnyLoaded

ОТЛАДКА: не загружается ресурс: /META-INF/javamail.providers

ОТЛАДКА: успешно загружен ресурс: /META-INF/javamail.default.providers

ОТЛАДКА: Таблицы загруженных provider

DEBUG: поставщики, перечисленные по имени класса: {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.m ail.pop3.POP3SSLStore, Sun Microsystems, Inc], com.sun.mail.imap.IMAPStore = javax.mail.Provider [STORE, imap, com.sun.mail.imap.IMAPStore, Sun Microsystems, Inc], ком. sun.mail.pop3.POP3Store = javax.mail.Provider [STORE, pop3, com.sun.mail.pop3.POP3Store, Sun Microsystems, Inc]}

ОТЛАДКА: Поставщики, перечисленные по протоколу: {imaps = javax.mail.Provider [STORE, imap, 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 [ТРАНСПОРТ, smtp, com.sun.mail.smtp.SMTPTransport, Sun Microsystems, Inc]}

DEBUG: успешно загружен ресурс: /META-INF/javamail.default.address.map

DEBUG:! anyLoaded

ОТЛАДКА: не загружается ресурс: /META-INF/javamail.address.map

ОТЛАДКА: java .io.FileNotFoundException: /usr/java/jdk1.8.0_144/jre/lib/javamail .address.map (нет такого файла или каталога)

DEBUG: getProvider (), возвращающий javax.mail.Provider [TRANSPORT, smtp, com.sun.mail.smtp.SMTPTransport, Sun Microsystems, Inc]

Отладка SMTP: useEhlo true, useAuth false

Отладка SMTP: попытка подключения к хосту "email-smtp.us-east-1.amazon aws .com", порт 25, isSSL false

1 Ответ

0 голосов
/ 13 февраля 2020

Вы используете древнюю версию JavaMail; обновите, если возможно.

Если вы запускаете программу JavaMail в AWS, обратите внимание, что AWS имеет ограничения на использование JavaMail и к какому SMTP-хосту вы можете подключиться. Обратитесь к их документации для деталей. (Извините, у меня нет ссылки.)

Если вы работаете вне AWS, см. FAQ по JavaMail для советов по устранению проблем с подключением . Скорее всего, вы находитесь за брандмауэром, который не позволяет подключиться напрямую.

...