Bonjour,
j'ai une application java qui doit envoyer des e-mail, le code est simple et utilise l'API javamail.
mais voila, mon probleme c'est que j'obtient tjrs l'erreur suivante

send failed, exception: javax.mail.MessagingException: Unknown SMTP host: smtp.gmail.com;

mon code est le suivant
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
public static void main(String[] args) {
        final String userName="moncompte@gmail.com";
        final String password="monmotdepass";
        final Session session;
        Properties props = new Properties();
    props.put("mail.smtp.host","smtp.gmail.com");
    props.put("mail.smtp.port",465);
    props.put("mail.from", "moncompte@hotmail.co.uk");
    Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider());
		    props.put("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
		    props.put("mail.smtp.socketFactory.fallback", "false");
		    props.put("mail.smtp.auth", "true");
		    props.put("mail.smtp.socketFactory.port",465);
    if (null == userName || null == password) {
	        session = Session.getDefaultInstance(props, null);
	    } else {
	        // Connexion avec authentification
	        session = Session.getDefaultInstance(props, new Authenticator(){
                protected PasswordAuthentication getPasswordAuthentication() {
                    return new PasswordAuthentication(userName, password);
                }
	        });
	    }
 
    try {
        MimeMessage msg = new MimeMessage(session);
        msg.setFrom();
        msg.setRecipients(Message.RecipientType.TO,
                          "destinataire@gmail.com");
        msg.setSubject("test");
        msg.setSentDate(new Date());
        msg.setText("bonjour\n");
        Transport.send(msg);
    } catch (MessagingException mex) {
        System.out.println("send failed, exception: " + mex);
    }
    }
merci