Salut tout le monde, J essaye d envoyer un email a partir d'une page web contenant: to: from: subject: message: au proprietaire du site web le code est le suivant :

mailerbean.java

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
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
 
package test;
import java.io.*;
import java.util.*;
import javax.mail.*;
import javax.mail.event.*;
import javax.mail.internet.*;
 
public final class MailerBean extends Object implements Serializable {
 
	/* Bean Properties */
	private String to = null;
	private String from = null;
	private String subject = null;
	private String message = null;
	public static Properties propss = null;
	public static Session session = null;
 
	static {
		/*	Setting Properties for STMP host */
 
 
 
 
 
 
 
		   Properties propss = (Properties)System.getProperties().clone();
			propss.put("mail.smtp.host", "smtp.gmail.com");
                        propss.put("mail.smtp.port", "587");
			propss.put("mail.transport.protocol", "smtp");
 
			propss.put("mail.debug", "true");
			propss.put("mail.smtp.auth", "true");
 
 
 
 
 
			propss.put("mail.smtp.starttls.enable", "true");
 
 
			Session s = Session.getInstance(propss, null);
			s.setDebug(true);
 
 
 
	}
	/* Setter Methods */
	public void setTo(String to) {
		this.to = to;
	}
 
	public void setFrom(String from) {
		this.from = from;
	}
 
	public void setSubject(String subject) {
		this.subject = subject;
	}
 
	public void setMessage(String message) {
		this.message = message;
	}
	/* Sends Email */
	public void sendMail() throws Exception {
		if(!this.everythingIsSet())
			throw new Exception("Could not send email.");
		try {
			MimeMessage mes = new MimeMessage(session);
			mes.setRecipient(Message.RecipientType.TO, 
				new InternetAddress(this.to));
			mes.setFrom(new InternetAddress(this.from));
			mes.setSubject(this.subject);
			mes.setText(this.message);
			Transport.send(mes);
		} catch (MessagingException e) {
			throw new Exception(e.getMessage());
		}
	}
 
	/* Checks whether all properties have been set or not */
	private boolean everythingIsSet() {
		if((this.to == null) || (this.from == null) || 
		   (this.subject == null) || (this.message == null))
			return false;
 
		if((this.to.indexOf("@") == -1) ||
			(this.to.indexOf(".") == -1))
			return false;
 
		if((this.from.indexOf("@") == -1) ||
			(this.from.indexOf(".") == -1))
			return false;
 
		return true;
	}
}
je recois l erreur : Could not connect to SMTP host: localhost, port: 25

J ai beaucoup cherche dans des forums et j ai compris qu il faut configure le fichier web.xml, ce que j ai fait, j ai ,en fait, ajoute le code suivant a mon fichier web.xml:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
<resource-ref>
  <res-ref-name>MySession</res-ref-name>
  <res-type>javax.mail.Session</res-type>
  <res-auth>Container</res-auth>
</resource-ref>
Puis j ai rajoute a installed-files.xml

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
<Resource name="mail/Session" auth="Container" type="javax.mail.Session"/>
  <ResourceParams name="mail/Session">
    <parameter>
      <name>mail.smtp.host</name>
      <value>mail.gmail.com</value>
    </parameter>
    <parameter>
      <name>mail.smtp.port</name>
      <value>25</value>
    </parameter>
  </ResourceParams>
Et je recois toujours la meme erreur Plz plz j ai besoin de votre aide merci les amis