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 62 63 64 65 66 67 68 69 70
|
public static boolean envoiEmail(String emailDest, String sujet, String emailText, String...fichiers){
boolean result = false;
String MAILER_VERSION = "JavaMail 1.6.1";
if(fichiers.length > 0){
for (int i = 0; i < fichiers.length; i++) {
Str.println("fichier[" + i + "] = " + fichiers[i]);
}
}
try {
FileDataSource datasource1;
DataHandler handler1;
Properties prop = System.getProperties();
prop.put("mail.smtp.host", Options.serveurSmtp);
prop.setProperty("mail.smtp.auth", "false");
Session session = Session.getDefaultInstance(prop,null);
session.setDebug(false);
InternetAddress[] internetAddresses = new InternetAddress[1];
internetAddresses[0] = new InternetAddress(emailDest);
MimeMessage message = new MimeMessage(session);
message.setFrom(new InternetAddress(Options.entreprise.getProEmail(), Options.entreprise.getNom()));
message.setSender(new InternetAddress(Options.entreprise.getProEmail()));
message.setRecipients(Message.RecipientType.TO,internetAddresses);
message.setSubject(MimeUtility.encodeText(sujet, "UTF-8", "Q"));
message.setHeader("X-Mailer", MAILER_VERSION);
message.setSentDate(new Date());
// creates message part
MimeBodyPart messageBodyPart = new MimeBodyPart();
messageBodyPart.setContent(emailText, "text/html");
// creates multi-part
Multipart multipart = new MimeMultipart();
multipart.addBodyPart(messageBodyPart);
// adds attachments
for (String fichier : fichiers) {
if (fichier.length() > 0) {
datasource1 = new FileDataSource(fichier);
handler1 = new DataHandler(datasource1);
MimeBodyPart attachPart = new MimeBodyPart();
attachPart.setDataHandler(handler1);
attachPart.setFileName(datasource1.getName());
multipart.addBodyPart(attachPart);
}
}
// sets the multi-part as e-mail's content
message.setContent(multipart);
Transport.send(message);
result = true;
} catch (MessagingException ex) {
Str.printlnForcé(ex.getMessage() + "\n\nemailDest = " + emailDest);
} catch (UnsupportedEncodingException ex) {
GuiUserCom.erreur(ex);
}
return result;
} |