[JavaMail] message à partir d'un fichier
Bonjour,
je viens tout juste de découvrir l'API JavaMail, j'ai mis en place un système basique histoire de tester mais là je souhaiterai approfondir et je me demandais s'il était possible d'aller chercher un fichier et de le définir en tant que corps du message.
Je m'explique, j'ai un formulaire .jsp avec un récapitulatif des différents choix fait par l'utilisateur, et je voudrais pouvoir récuperer cette page dans mon mail.
Actuellement j'ai fait un copier coller du code source de ma jsp que j'ai remis en forme dans ma servlet ( très chiant :cry: ) mais pour eviter de devoir aller chercher dans le code de la servlet pour modifier le mail qui est envoyé , il serait plus simple d'avoir un fichier à part.
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 40 41 42 43
| boolean debug = false;
String destinataires[] = {"florian.cadic@sdis44.fr"};
String subject = "Demande d'installation";
String from = "DemandeInstallation@intranet";
String message = "<html><head><title> test </title></head>"+
"<body> ..... ";
try {
// Set the host smtp address
Properties props = new Properties();
props.put("mail.smtp.host", "W2K3-EXCH-1.sdis44.fr");
// create some properties and get the default Session
javax.mail.Session sessionMail = Session
.getDefaultInstance(props, null);
sessionMail.setDebug(debug);
// create a message
Message msg = new MimeMessage(sessionMail);
// set the from and to address
InternetAddress addressFrom = new InternetAddress(from);
msg.setFrom(addressFrom);
InternetAddress[] addressTo = new InternetAddress[destinataires.length];
for (int i = 0; i < destinataires.length; i++) {
addressTo[i] = new InternetAddress(destinataires[i]);
}
msg.setRecipients(Message.RecipientType.TO, addressTo);
// Optional : You can also set your custom headers in
// the Email
// if you Want
// msg.addHeader("MyHeaderName", "myHeaderValue");
// Setting the Subject and Content Type
msg.setSubject(subject);
msg.setContent(message, "text/html");
Transport.send(msg);
} catch (MessagingException ex) {
ex.printStackTrace();
} |
J'espere avoir été assez clair, si quelqu'un avait une idée :)
Merci