L’envoi de pièces jointes ne pose pas de soucis particulier.
Dans votre test, le ficher semble vide, de plus est-il détruit avant envoi du mail proprement dit / asynchrone ?
Les envois sont asynchrones par défaut pour ne pas bloquer l’utilisateur si le serveur SMTP est long a répondre. cf paramètre EMAIL_SEND_ASYNC.
try {
String file = getGrant().getTmpDir() + "/test.txt";
java.io.FileWriter r = new java.io.FileWriter(file);
r.write("xxx");
r.close();
new Mail(getGrant()).sendWithAttach(
new String[]{"xxx@xxx.fr"}, null, null, null,
"test email", "content...", Mail.MAIL_MIME_TYPE_HTML,
new String[]{ file }, null);
}
catch(Exception e) {
AppLog.error("error", e, getGrant());
}
Merci pour la réponse François, après avoir essayé vos solutions, je ne comprenais pas pourquoi cela ne fonctionnait pas. J’ai donc essayé avec d’autres mails : le problème venait du mail du destinataire , car sur d’autres adresses d’autres domaines, je reçois bien la PJ… Mea culpa !