Bonjour,
j'ai actuellement une succession de formulaires qui au final débouche sur un envoi de mail:
Comme vous pouvez le voir(ou pas) je recupere l'utilisateur loggé, et une liste d'applications ainsi que les profils liés.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 if (request.getParameter("validerRecap") != null) { boolean debug = false; //String destinataires[] = {"florian.cadic@sdis44.fr"}; String subject = "Demande d'installation"; Utilisateur monUtilisateur = ((Utilisateur)session.getAttribute("utilisateurLog")); String from = monUtilisateur.getNom().toUpperCase()+"."+monUtilisateur.getPrenom()+"@DemandeInstallation"; Iterator itApp = ((Vector)session.getAttribute("mesApplications")).iterator(); int cpt=0; while(itApp.hasNext()){ Vector profils = ((Vector)session.getAttribute("mesProfilsAppli")); Application appCourante =((Application)(GetList.getApplication(((String)itApp.next())).get(0))); String destinataires[] = {ApplicationDAO.getInstance().findReferent(((String)itApp.next())).getMail()}; String message = "<html><head><title> Avis concernant une demande</title></head><body>"; message += monUtilisateur.getNom()+" "+monUtilisateur.getPrenom()+" a fait une demande d'installation pour l'application suivante :<br>"; message += "- "+appCourante.getLibelleApplication(); message += "<br>Profil :"+ ((Profil)GetList.getProfil(((String)profils.get(cpt))).get(0)).getLibelleProfil(); message += "<br>Validez vous sa demande pour cette application et ce profil?"; message += "<form action='http://"+request.getServerName()+":"+request.getServerPort()+request.getContextPath()+"/integration/demande/FormulaireDemande' method='POST'>"; message += "<input type='submit' name='validerDemandeMail' value='Valider' onClick='alert('test ok')' /><input type='submit' name='refuserDemandeMail' value='Refuser' />"; message += "</form></body></html>"; 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); // Setting the Subject and Content Type msg.setSubject(subject); msg.setContent(message, "text/html"); System.out.println("envoi"); Transport.send(msg); getServletContext().getRequestDispatcher( JSP_PATH_DEMANDE + "formulaireConfirmationValidation.jsp") .forward(request, response); } catch (MessagingException ex) { ex.printStackTrace(); } cpt++; } }
En fait, à chaque application est attaché une personne, je tente donc de faire une boucle pour envoyer un mail à chacune de ces personnes; malheureusement ça n'envoie qu'un seul et unique mail à la premiere personne ( protection antispam j'imagine).
Le mail est donc en format html.
La personne reçoit donc un mail avec les différentes references et deux boutons ( Valider / Refuser), et le but serait de pouvoir pointer sur ma servlet via ces deux boutons; c'est ce que j'ai tenté de faire via leMalheureusement lorsque je clique sur nimporte quel bouton , rien ne se passe
Code : Sélectionner tout - Visualiser dans une fenêtre à part <form action="urldemaservlet" method="POST">
Je voudrais donc savoir d'une part si mon envoi de mails multiple est faisable et d'autre part si ce que je souhaite mettre en place sur mon mail est possible?
Merci.
Partager