[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [sdx-users] Envois de mail depuis une application SDX
From: |
André Davignon |
Subject: |
Re: [sdx-users] Envois de mail depuis une application SDX |
Date: |
Mon, 07 May 2012 19:18:15 +0200 |
User-agent: |
Thunderbird 2.0.0.22 (Windows/20090605) |
Bonjour,
Si je comprends bien votre question (ce qui n'est pas sûr), il faut
utiliser depuis la validation d'un formulaire web (une page html générée
dynamiquement) un pipeline classique avec :
- un générateur xsp (dans lequel vous utilisez l'API de mail.jar, voir
ci-dessous)
- une transformation XSL pour la mise en page du résultat de l'action
(par exemple "message envoyé")
- un sérialiseur de votre choix
dans la XSP, un code (approximatif) comme le suivant devrait fonctionner :
<!-- le relais SMTP -->
String host = "myHost";
props.put("192.168.***.***", host);
props.put("mail.smtp.host", "192.168.***.***");
props.put("mail.smtp.port", "25");
<!--Récupère la session-->
javax.mail.Session mailSession = javax.mail.Session.getInstance(props,
null);
<!--Définition du message-->
javax.mail.internet.MimeMessage message = new
javax.mail.internet.MimeMessage(mailSession);
<!--Spécification de l'expéditeur-->
String emailfrom = "address@hidden";
message.setFrom(new javax.mail.internet.InternetAddress(emailfrom));
<!--Sujet du message-->
message.setSubject(javax.mail.internet.MimeUtility.encodeText("Mon
Objet", "UTF-8", "Q"));
<!--Spécification du destinataire-->
<!-- éventuellement boucle pour remplir la liste des destinataires -->
Address[] dests = new InternetAddress[1];
dests[0] = new InternetAddress("address@hidden", dest);
<!-- ... -->
message.addRecipients(Message.RecipientType.TO,dests);
<!--Contenu du message-->
message.setContent("blabla, "text/html");
<!--Envoie le message-->
Transport tr = mailSession.getTransport("smtp");
tr.connect();
message.saveChanges();
tr.sendMessage((javax.mail.Message)message,dests);
Ne pas oublier d'inclure les jar correspondants dans WEB-INF/lib ni
d'inclure les lib correspondantes avec les <xsp:include>
André Davignon
Bonjour et merci pour votre réponse.
Je suis tout à fait disposé à passer par l'utilisation direct de l'API
de mail.jar si c'est plus indiqué que la logicsheet.
Cependant, je n'arrive pas à lier un fichier html dynamiquement généré
à mon mail avec cette méthode.
Auriez-vous un exemple d'utilisation qui fasse ça à me montrer ?
merci d'avance
Vincent
Le 02/05/2012 19:23, André Davignon a écrit :
Bonjour,
Si vous utilisez SDX (2.3 ou 2.4), je vous conseillerais de passer
par une xsp qui utiliserait mail.jar et activation.jar, leurs API,
sans faire appel à la logicsheet. C'est ce que nous faisons au Pandoc
et qui fonctionne très bien.
André
Bonjour,
j'avais mis en place il y a un certain temps, sur une application
SDX 2.3 la possibilité d'envoyer un panier de documents par mail.
C'était basé sur le logicsheet sendmail et ça fonctionnait très bien
avec la possibilité d'envoyer des fichiers attachée créé dynamiquement.
J'ai essayé de porter à l'équivalent cette fonctionnalité sur un SDX
2.4 mais ça ne fonctionnne pas. J'ai peu de retours intéressants en
terme de message d'erreur.
(juste : org.apache.cocoon.ProcessingException: Could not transform
resource://org/apache/cocoon/components/language/markup/xsp/java/sendmail.xsl
).
Je ne sais pas trop si cette liste est encore beaucoup lue et j'ai
conscience que mon problème n'est pas à proprement parlé un problème
SDX mais je ne sais pas trop où trouver des conseils.
Peut-être que certains d'entre vous ont mis en place une
fonctionnalité équivalente sur une application SDX 2.4 ?
Sinon peut-être auriez-vous une idée sur ce qui expliquerait la
différence de comportement entre les 2 version de SDX ?
merci d'avance pour vos réponses
_______________________________________________
sdx-users mailing list
address@hidden
https://lists.nongnu.org/mailman/listinfo/sdx-users
_______________________________________________
sdx-users mailing list
address@hidden
https://lists.nongnu.org/mailman/listinfo/sdx-users