Envoyer un mail par un compte Gmail
Projet gus05 de développement Java :: Chantiers :: Chantiers techniques :: Transfert des données :: Le mailing
Page 1 sur 1
Envoyer un mail par un compte Gmail
Voici un premier exemple de code Java pour envoyer un mail automatiquement à partir d'un compte Gmail.
Un accusé de réception est demandé à la lecture du mail. Pour tester ce code, vous devez juste remplacer les parties en vert par vos propres informations
String host = "smtp.gmail.com";
String username = "<votre-adresse-gmail>@gmail.com";
String password = "<votre-mot-de-passe>";
String port = "465";
String to = "<la-liste-des-adresses-de-destination-séparés-par-des-virgules>";
String subject = "Test d'envoi automatique par Java";
String content = "Ceci est un test d'envoi automatique de mail par Java en utilisant l'adresse: "+username;
InternetAddress[] addresses = InternetAddress.parse(to, true);
InternetAddress fromAddress = new InternetAddress(username);
Properties props = new Properties();
props.put("mail.smtp.host", host);
props.put("mail.smtp.user", username);
props.put("mail.smtp.port", port);
props.put("mail.smtp.starttls.enable","true");
props.put("mail.smtp.auth", "true");
props.put("mail.smtp.debug", "true");
props.put("mail.smtp.socketFactory.port", port);
props.put("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
props.put("mail.smtp.socketFactory.fallback", "false");
System.out.println("creating session");
Session session = Session.getDefaultInstance(props, null);
System.out.println("creating message");
MimeMessage message = new MimeMessage(session);
message.setText(content);
message.setSubject(subject);
message.setFrom(fromAddress);
message.setRecipients(Message.RecipientType.TO,addresses);
message.setHeader("Disposition-Notification-To",fromAddress.getAddress());
System.out.println("creating transport");
Transport transport = session.getTransport("smtp");
System.out.println("connecting to "+host+" with username = "+username);
transport.connect(host, username, password);
System.out.println("sending message");
transport.sendMessage(message, message.getAllRecipients());
transport.close();
System.out.println("transport closed");
Un accusé de réception est demandé à la lecture du mail. Pour tester ce code, vous devez juste remplacer les parties en vert par vos propres informations
String host = "smtp.gmail.com";
String username = "<votre-adresse-gmail>@gmail.com";
String password = "<votre-mot-de-passe>";
String port = "465";
String to = "<la-liste-des-adresses-de-destination-séparés-par-des-virgules>";
String subject = "Test d'envoi automatique par Java";
String content = "Ceci est un test d'envoi automatique de mail par Java en utilisant l'adresse: "+username;
InternetAddress[] addresses = InternetAddress.parse(to, true);
InternetAddress fromAddress = new InternetAddress(username);
Properties props = new Properties();
props.put("mail.smtp.host", host);
props.put("mail.smtp.user", username);
props.put("mail.smtp.port", port);
props.put("mail.smtp.starttls.enable","true");
props.put("mail.smtp.auth", "true");
props.put("mail.smtp.debug", "true");
props.put("mail.smtp.socketFactory.port", port);
props.put("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
props.put("mail.smtp.socketFactory.fallback", "false");
System.out.println("creating session");
Session session = Session.getDefaultInstance(props, null);
System.out.println("creating message");
MimeMessage message = new MimeMessage(session);
message.setText(content);
message.setSubject(subject);
message.setFrom(fromAddress);
message.setRecipients(Message.RecipientType.TO,addresses);
message.setHeader("Disposition-Notification-To",fromAddress.getAddress());
System.out.println("creating transport");
Transport transport = session.getTransport("smtp");
System.out.println("connecting to "+host+" with username = "+username);
transport.connect(host, username, password);
System.out.println("sending message");
transport.sendMessage(message, message.getAllRecipients());
transport.close();
System.out.println("transport closed");
Attention à Avast !
Si vous utilisez l'antivirus Avast (version 8 ), l'agent mail doit être paramétré pour permettre aux courrier sortant smtp de s'exécuter sans problème.
Le plus simple est de décocher temporairement la case : Analyser le courrier sortant (SMTP).
Bon, voilà, je vous donne l'astuce parce que j'ai galéré pendant quelques temps avant de comprendre la raison pour laquelle mon programme Java d'envoi de mails de fonctionnait plus comme avant ...
Le plus simple est de décocher temporairement la case : Analyser le courrier sortant (SMTP).
Bon, voilà, je vous donne l'astuce parce que j'ai galéré pendant quelques temps avant de comprendre la raison pour laquelle mon programme Java d'envoi de mails de fonctionnait plus comme avant ...
Sujets similaires
» Récupérer les mails d'un compte Gmail
» Synology : envoyer un mail avec PHP
» Lancer le client Mail sur une adresse mail
» Lancer le client Mail sur une adresse mail
» Présentation de Mail Sender
» Synology : envoyer un mail avec PHP
» Lancer le client Mail sur une adresse mail
» Lancer le client Mail sur une adresse mail
» Présentation de Mail Sender
Projet gus05 de développement Java :: Chantiers :: Chantiers techniques :: Transfert des données :: Le mailing
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum
|
|
Mar 16 Sep - 12:01 par Gus
» Présentation du jeu Vindinium
Jeu 20 Fév - 15:32 par Gus
» Rechercher la cible la plus proche avec le "Breadth First Search"
Jeu 20 Fév - 13:06 par Gus
» Impression d'écran avec sélection de zone
Jeu 20 Fév - 12:12 par Gus
» Envoyer un mail par un compte Gmail
Jeu 25 Avr - 14:04 par Gus
» Streaming : comment télécharger les vidéos
Lun 4 Fév - 19:59 par Gus
» Synology : installer ipkg
Mar 22 Jan - 21:22 par Gus
» Trouver le type de lecteur avec JNA
Mer 9 Jan - 23:11 par Gus
» Adresse ip publique et adresse ip privée, Internet box et UPnP
Mer 9 Jan - 21:02 par Gus
» Accéder au numéro de série du lecteur par un script vb
Mer 9 Jan - 19:31 par Gus