2010-07-28 2 views
1

try { Свойства props = new Properties(); props.put ("mail.smtp.starttls.enable", "true"); props.setProperty ("mail.transport.protocol", "smtp"); props.setProperty ("mail.smtp.host", "smtp.gmail.com"); props.put ("mail.smtp.auth", "true"); props.put ("mail.smtp.port", "465"); props.put ("mail.smtp.socketFactory.port", "587"); props.put ("mail.smtp.socketFactory.fallback", "false"); props.setProperty ("mail.user", "username"); props.setProperty («mail.password», «password»);Почтовый клиент в java

Session session = Session.getDefaultInstance(props, new javax.mail.Authenticator() 
    { 
    protected PasswordAuthentication getPasswordAuthentication() 
    { return new PasswordAuthentication("username","password"); } 
    }); 
session.setDebug(true); 

MimeMessage msg = new MimeMessage(session); 

InternetAddress addressFrom = new InternetAddress(from); 
msg.setFrom(addressFrom); 

msg.addRecipient(Message.RecipientType.TO,new InternetAddress(" Recipient mail id ")); 

msg.setSubject(subject); 
Transport transport = session.getTransport(); 
transport.connect(); 
transport.sendMessage(msg,msg.getRecipients(Message.RecipientType.TO)); 
transport.close(); 

} catch (Exception e) { 
// TODO Auto-generated catch block 
e.printStackTrace(); 
} 

Этот код используется для отправки электронной почты в учетную запись gmail. Я установил значение хоста smtp (smtp.gmail.com) и порт (465) в свойствах. Но электронная почта не отправляется, и мое приложение застряло в течение длительного времени. После этого я получаю сообщение об ошибке, как приведено ниже

«javax.mail.MessagingException: Не удалось подключиться к SMTP хост: smtp.gmail.com, порт: 465, ответ: -1»

Может кто-нибудь сказать в чем причина и как решить эту проблему?

ответ

1

Установка

props.put("mail.smtp.starttls.enable", "true"); 

позволяет TLS, который находится на порту не 465

props.put("mail.smtp.port", "587"); 

См Google Doc

И проверить, действительно ли вам нужны эти строки

props.put("mail.smtp.socketFactory.port", "587"); 
props.put("mail.smtp.socketFactory.fallback", "false"); 
+0

еще одна ссылка http://forums.sun.com/thread.jspa?threadID=5316613 – stacker

+0

Эй, спасибо, так много, это сработало .... – Padma

Смежные вопросы