Bonjour,
Voilas quand j’exécute mon code une erreur apparaît :
Exception in thread "main" java.lang.NullPointerException
at com.sun.mail.smtp.SMTPTransport.sendMessage(SMTPTransport.java:295)
at com.sdzee.javamail.Javamail.Javamailmethod(Javamail.java:48)
at com.sdzee.javamail.Javamail.main(Javamail.java:15)
J'en déduis donc qu'a la ligne 48 de ma classe Javamail, l'objet retourne une valeur null ou du moins qu'il y a un problème.
Le code de la classe :
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 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61
|
package com.sdzee.javamail;
import java.util.Properties;
import javax.mail.*;
import javax.mail.internet.*;
import com.sdzee.servlets.Mail;
public class Javamail {
public static void main (String[] args) throws Exception {
new Javamail().Javamailmethod();
}
public void Javamailmethod (){
String host = "mail-m2l.fr.nf";
String from = "rch@mail-m2l.fr.nf";
String to = "mondestinataire@gmail.com";
String username = "unidentifiant";
String password = "unmotdepasse";
Properties props = new Properties();
props.put("mail.smtp.port", "587");
props.setProperty("mail.smtp.ssl.enable", "true");
props.setProperty("mail.smtp.ssl.socketFactory.class",
"DummySSLSocketFactory");
props.setProperty("mail.smtp.ssl.socketFactory.fallback", "false");
Session session = Session.getInstance(props, null);
session.setDebug(true);
MimeMessage message = new MimeMessage(session);
try {
message.setFrom(new InternetAddress(from));
message.setSubject("Hello");
message.setText("Hello World");
Transport tr = session.getTransport("smtp");
tr.connect(host, username, password);
message.saveChanges();
tr.sendMessage(message,message.getAllRecipients());
tr.close();
message.addRecipient(Message.RecipientType.TO, new InternetAddress(to));
} catch (AddressException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (MessagingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
} |
Hors dans
tr.sendMessage(message,message.getAllRecipients());
je ne vois pas d'erreur, je lui indique bien de prendre en paramètre le texte et le sujet indiquer juste au dessus.
Donc deux erreurs possibles :
- Je ne comprend pas l'erreur que me renvoi la console et donc sa ne vient pas de la
- J'ai fait une erreur dans mon code
Dans les deux cas je n'arrive pas à résoudre cette erreur, si vous pouviez m'aidez je vous en serez grandement reconnaissant.
Merci d'avance.
Partager