Bonjour a tous,

Je voudrai savoir deux petites chose:
1. Comment faire pour savoir si la machine hote a un acces internet ?
2. Comment faire pour testé une connexion SMTP? (via une adresse DNS et un numero de port, adresse mail, mot de passe et support ssl ou non)
Ceci dans le but de voir si mon utilisateur a entrée des information valide.

Merci d'avance pour votre aide

EDIT:

1. Comment faire pour savoir si la machine hote a un acces internet ?
j'ai trouvez une solution: (pour les gens qui chercherais)
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
 
/**
 * Méthode permettant de savoir si nous somme connecté a internet
 * @return true si nous somme connecté, false sinon
 */
private boolean isConnected(){
 
	try {
		InetAddress ia=InetAddress.getByName("www.google.fr");
		if(ia.isReachable(3000))
			return true;
		else
			return false;
	} catch (Exception e1){
		return false;
	}
}

Par contre, j'ai toujours pas trouvez pour ma seconde question....


EDIT: voici ce que j'essaie pour la connexion SMTP:

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
 
try{
Properties prop = System.getProperties();
prop.put("mail.smtp.host","smtp.fai.fr");
String mdp="leMotDePasse";
MailAuth ma=new MailAuth("envoyeur@fai.fr", mdp);
Session session = Session.getDefaultInstance(prop,ma);
 
//la j'essaie d'envoyé un message, mais a terme
// je ne souhaite pas qu'un message soit envoyé pour
// effectué le test de connexion
Message message = new MimeMessage(session);
message.setFrom(new InternetAddress("destinataire@fai.fr"));
 
InternetAddress[] internetAddresses = new InternetAddress[1];
internetAddresses[0] = new InternetAddress("destinataire@fai.fr");
message.setRecipients(Message.RecipientType.TO,internetAddresses);
message.setSubject("Test");
message.setText("test mail");
message.setSentDate(new Date());
Transport.send(message);
} catch (AddressException e1) {
		// TODO Auto-generated catch block
		e1.printStackTrace();
} catch (MessagingException e1) {
		// TODO Auto-generated catch block
		e1.printStackTrace();
}


Ma Class MailAuth (en cour de réalisation)
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
 
package traitement;
 
import javax.mail.Authenticator;
import javax.mail.PasswordAuthentication;
 
public class MailAuth extends Authenticator{
 
	private String addresse;
	private String mdp;
 
	public MailAuth(String adresse,String mdp){
		this.addresse=adresse;
		this.mdp=mdp;
	}
 
 
	public PasswordAuthentication getPasswordAuthentication(){
		return new PasswordAuthentication(addresse, mdp);		
	}
}

(le lien vers la doc : http://javamail.kenai.com/nonav/javadocs/index.html )


Et la je me retrouve avec une erreur:
com.sun.mail.smtp.SMTPSendFailedException: 530 authentication required
Je precise que j'ai essayé de me connecter sur un serveur yahoo (qui demande un support SSL)


Donc si vous avez une idée pour résoudre mon problème... (j'utilise JavaMail)
Merci d'avance pour votre aide



EDIT:

j'ai trouvez pour activvé le ssl:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
prop.put("mail.smtp.ssl.enable", true);
Par contre, le probleme est que maintenant le serveur me dit:


MAIL FROM:<adresse@hotmail.fr>
553 From address not verified - see <lien url="http://help.yahoo.com/l/us/yahoo/mail/original/manage/sendfrom-07.html">http://help.yahoo.com/l/us/yahoo/mail/original/manage/sendfrom-07.html</lien>
DEBUG SMTP: got response code 553, with response: 553 From address not verified - see <lien url="http://help.yahoo.com/l/us/yahoo/mail/original/manage/sendfrom-07.html">http://help.yahoo.com/l/us/yahoo/mail/original/manage/sendfrom-07.html</lien>

RSET
250 flushed
com.sun.mail.smtp.SMTPSendFailedException: 553 From address not verified
Donc la je suis a la recherche du pourquoi du comment cette erreur... (l'adresse est bien sur correct)

Alors is vous avez deja rencontrer ce probleme...


EDIt: bon je voit que je m’éloigne beaucoup du sujet, je vais donc recréer un post dans la section API IO. Si un modérateur passe par ici, il peut lock le sujet