Javamail : envoi via le SMTP Free
Bonjour,
J'ai un service à vous demander.
Est-ce que quelqu'un d'entre vous à un petit programe QUI MARCHE pour envoyer des mails avec javaMail via un smtp du genre free?
En effet, sur Internet, il y a plein d'exemple qui ne marche presque jamais.
Ca serait super cool.
En aucun cas, c'est pour faire un copier coller, mais juste pour voir le fonctionnement, car j'ai testé pas mal de trucs, en vain.
Merci d'avance.
Cordialement.
Jo
[Javamail] Envoi basique de mail
Bonjour à tous
J'ai le même problème :Je tente de faire envoyer un mail par mon application.
Voici ce que j'ai essayé (sans succès) pour mes tests :
Code:
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
| import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.Transport;
import javax.mail.internet.AddressException;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
String MAILER_VERSION = "Java";
String serveur = "smtp.wanadoo.fr";
try
{
Properties prop = System.getProperties();
prop.put("mail.smtp.host", serveur);
javax.mail.Session session = (javax.mail.Session.getDefaultInstance(prop, null));
Message message = new MimeMessage(session);
message.setFrom(new InternetAddress("moi@wanadoo.fr"));
InternetAddress[] internetAddresses = new InternetAddress[1];
internetAddresses[0] = new InternetAddress("autreMoi@wanadoo.fr");
message.setRecipients(Message.RecipientType.TO,internetAddresses);
message.setSubject("TestMailPreri");
message.setText("test mail pour Preri");
message.setHeader("X-Mailer", MAILER_VERSION);
message.setSentDate(new Date());
session.setDebug(true);
Transport.send(message);
}
catch (AddressException e) {
e.printStackTrace();
}
catch (MessagingException e) {
e.printStackTrace();
} |
Je crois que je n'ai pas tout compris en ce qui concerne le serveur.
J'ai aussi essayé :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
| import org.apache.commons.mail.*;
try {
SimpleEmail email = new SimpleEmail();
email.setHostName("smtp.wanadoo.fr");
email.addTo("moi@wanadoo.fr", "moi");
email.setFrom("autreMoi@wanadoo.fr", "autre moi");
email.setSubject("Test message Preri");
email.setMsg("Simple test de commons-email");
email.send();
} catch (EmailException e) {
e.printStackTrace();
} |
Qu'est ce qui ne fonctionne pas dans mon code (il compile) ? Merci de m'aider.
voila comment utiliser javamail
Pour le J2SE, il est nécessaire de télécharger les fichiers utiles et de les installer.
Pour les deux versions de l'API, il faut télécharger la version correspondante, dezipper le fichier dans un répertoire et ajouter le fichier mail.jar dans le CLASSPATH.
Ensuite il faut aussi installer le framework JAF (Java Activation Framework) : télécharger le fichier, dezipper et ajouter
le fichier activation.jar dans le CLASSPATH Pour pouvoir utiliser le protocole POP3 avec JavaMail 1.1.3, il faut télécharger en plus l'implémentation de ce protocole
et inclure le fichier POP3.jar dans le CLASSPATH.
Pour le J2EE 1.2.1, l'API version 1.1.3 est intégrée à la plate−forme. Elle ne contient donc pas l'implémentation pour le
protocole POP3. Il faut la télécharger et l'installer en plus comme avec le J2SE.
Pour le J2EE 1.3, il n'y a rien de particulier à faire puisque l'API version 1.2 est intégrée à la plate−forme.
code :
Code:
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
| public static void main(String args[]) throws Exception {
String host = "mail.topnet.tn";//votre fournisseur de service internet
//exemple "topnet.tn" en tunisie ou "wanadoo.fr" en france (ne pas oublier //"mail."
String from = "kiki@gmail.com ";
String to = "kiko@gmail.com";
// Get system properties
Properties properties = System.getProperties();
// Setup mail server
properties.setProperty("mail.smtp.host", host);
// Get the default Session object.
Session session = Session.getDefaultInstance(properties);
// Create a default MimeMessage object.
MimeMessage message = new MimeMessage(session);
// Set the RFC 822 "From" header field using the
// value of the InternetAddress.getLocalAddress method.
message.setFrom(new InternetAddress(from));
// Add the given addresses to the specified recipient type.
message.addRecipient(Message.RecipientType.TO, new InternetAddress(to));
// Set the "Subject" header field.
message.setSubject("hi..le mail marche!");
// Sets the given String as this part's content,
// with a MIME type of "text/plain".
message.setText("Hi i marche enfin voici mon texte ");
// Send message
Transport.send(message);
System.out.println("Message Send.....");
}
} |
//bon courage à tous