J'ai codé une application, et je veux utiliser l'envoi de mails, j'ai trouvé ce code sur le net :
Et quand je le teste, j'ai cette exception :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41 package envoiMail; import javax.mail.internet.*; import javax.mail.*; import java.util.*; /** * Classe permettant d'envoyer un mail. */ public class TestMail { private final static String MAILER_VERSION = "Java"; public static boolean envoyerMailSMTP(String serveur, boolean debug) { boolean result = false; try { Properties prop = System.getProperties(); prop.put("mail.smtp.host", serveur); Session session = Session.getDefaultInstance(prop,null); Message message = new MimeMessage(session); message.setFrom(new InternetAddress("moi@gmail.com")); InternetAddress[] internetAddresses = new InternetAddress[1]; internetAddresses[0] = new InternetAddress("moimeme@gmail.com"); message.setRecipients(Message.RecipientType.TO,internetAddresses); message.setSubject("Test"); message.setText("test mail"); message.setHeader("X-Mailer", MAILER_VERSION); message.setSentDate(new Date()); session.setDebug(debug); Transport.send(message); result = true; } catch (AddressException e) { e.printStackTrace(); } catch (MessagingException e) { e.printStackTrace(); } return result; } public static void main(String[] args) { TestMail.envoyerMailSMTP("smtp.gmail.com",true); } }
je ne comprends pas un truc, pour envoyer un mail depuis la messagerie "moi@gmail.com", on doit pouvoir y accéder, mais dans le code, on ne spécifie nul part le password, et je pense que c'est ca qui bloque...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 DEBUG SMTP: useEhlo true, useAuth false DEBUG SMTP: trying to connect to host "smtp.gmail.com", port 25, isSSL false javax.mail.MessagingException: Could not connect to SMTP host: smtp.gmail.com, port: 25; nested exception is: java.net.ConnectException: Connection timed out: connect at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:1282) at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:370) at javax.mail.Service.connect(Service.java:275) at javax.mail.Service.connect(Service.java:156) at javax.mail.Service.connect(Service.java:105) at javax.mail.Transport.send0(Transport.java:168) at javax.mail.Transport.send(Transport.java:98) at envoiMail.TestMail.envoyerMailSMTP(TestMail.java:28) at envoiMail.TestMail.main(TestMail.java:39)
une idée ?
Partager