Impossible de se connecter à l'hôte SMTP exception lors de l'envoi de mail par le biais de l'API JavaMail

J'essaie d'envoyer un e-mail à votre compte Gmail à l'aide de l'API JavaMail. J'ai fait le code suivant.Je veux envoyé un mail à plusieurs des récipiendaires.Mais ça ne fonctionne pas.Sa donner une exception comme "impossible de se connecter à l'hôte SMTP.l'envoi a échoué"

package com.cts.email;
import java.util.Properties;
import javax.mail.Message; 
import javax.mail.MessagingException;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.Transport; 
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
public class SendEmail {     
Properties emailProperties;  
Session mailSession;
MimeMessage emailMessage;   
public static void main(String args[]) throws MessagingException, javax.mail.MessagingException {      
SendEmail javaEmail = new SendEmail();  
Session session=javaEmail.setMailServerProperties();   
javaEmail.createEmailMessage(session);  
// javaEmail.sendEmail(); 
}    
public Session setMailServerProperties() {    
Properties props = new Properties();
props.put("mail.smtp.host", "smtp.gmail.com");
props.put("mail.smtp.socketFactory.port", "465");
props.put("mail.smtp.socketFactory.class",
"javax.net.ssl.SSLSocketFactory");
props.put("mail.smtp.auth", "true");
props.put("mail.smtp.port", "465");
Session session = Session.getDefaultInstance(props,
new javax.mail.Authenticator() {
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication("my_email","my_password");
}
});
return session; 
}    
public void createEmailMessage(Session session) throws MessagingException, javax.mail.MessagingException {    
String[] toEmails = { "[email protected]","[email protected]" };  
try {
for (String to_mail : toEmails) {
Message message = new MimeMessage(session);
message.setFrom(new InternetAddress("[email protected]"));
message.setRecipients(Message.RecipientType.TO,
InternetAddress.parse(to_mail));
message.setSubject("Java Email");
message.setText("This is an email sent by <b>JavaMail</b> api.");
Transport.send(message);
}
System.out.println("Done");
}catch (MessagingException e) {
throw new RuntimeException(e);
}   
}    
}

Je suis arriver exception suivante:

Exception in thread "main" java.lang.RuntimeException: javax.mail.SendFailedException: Sending failed;
nested exception is:
class javax.mail.MessagingException: Could not connect to SMTP host: smtp.gmail.com, port: 465;
nested exception is:
java.net.ConnectException: Connection refused: connect
at com.cts.email.SendEmail.createEmailMessage(SendEmail.java:62)
at com.cts.email.SendEmail.main(SendEmail.java:21)
Caused by: javax.mail.SendFailedException: Sending failed;
nested exception is:
class javax.mail.MessagingException: Could not connect to SMTP host: smtp.gmail.com, port: 465;
nested exception is:
java.net.ConnectException: Connection refused: connect
at javax.mail.Transport.send0(Transport.java:218)
at javax.mail.Transport.send(Transport.java:80)
at com.cts.email.SendEmail.createEmailMessage(SendEmail.java:55)
... 1 more

s'il vous plaît aidez-moi à travers ce.

Fonctionne pour moi: au moins je peux me connecter à elle.
Pourrait-il être le problème de réseau? Pare-feu, proxy, mauvais DNS?

OriginalL'auteur Sandeep Reddy K. | 2014-04-09