IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Servlets/JSP Java Discussion :

Problème Envoi Email


Sujet :

Servlets/JSP Java

  1. #1
    Membre du Club Avatar de sisiniya
    Inscrit en
    Décembre 2007
    Messages
    223
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 223
    Points : 67
    Points
    67
    Par défaut Problème Envoi Email
    Bonjour,

    Je tente d'envoyer un e-mail depuis Code Java, le Build de La classe est passé avec succés ( c'est à dire aucun problème dans le code), mais le seul problème c'est que l'e-mail ne s'envoie pas . Et voilà l'erreur :

    DEBUG SMTP: could not connect to host "smtp.mail.yahoo.fr", port: 25, response: -1
    Sending failed;

    nested exception is:
    class javax.mail.MessagingException: Could not connect to SMTP host: smtp.mail.yahoo.fr, port: 25, response: -1

    BUILD SUCCESSFUL (total time: 22 seconds)

  2. #2
    Membre confirmé
    Avatar de link256
    Profil pro
    Développeur Java
    Inscrit en
    Février 2003
    Messages
    596
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Février 2003
    Messages : 596
    Points : 642
    Points
    642
    Par défaut
    Qu'est ce que tu appelles build ? la compilation de la classe ?


    could not connect to host "smtp.mail.yahoo.fr",
    l'erreur est claire tu ne peux pas te connecter au serveur smtp de yahoo.
    tu passes bien par un compte mail enregistré chez yahoo ?

    est -ce que l'envoie de mail marche via outlook par exemple ?

    regarde la solution proposée dans ce post post3915477 cela devrait résoudre ton problème

  3. #3
    Membre éprouvé
    Avatar de kmdkaci
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    560
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 560
    Points : 950
    Points
    950
    Par défaut Problème Envoi Email
    Bonjour,
    C'est toujours le même problème avec Yahoo et compagnies...
    Je pense que pour se connecter, il faut s'authentifier, l'as-tu fais ????
    Sinon voici un exemple de test d'envoi de mail, mais avec Gmail.... : http://kmdkaci.developpez.com/tutori...avec-site-web/
    Sinon il y a une discussion sur ce sujet : http://www.developpez.net/forums/d72...asser-outlook/

  4. #4
    Membre du Club Avatar de sisiniya
    Inscrit en
    Décembre 2007
    Messages
    223
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 223
    Points : 67
    Points
    67
    Par défaut
    Bonjour,

    J'utilise comme Client de Messagerie " Thunderbird ", et aussi j'ai un compte enregistré de Yahoo ( user + password ) . Voilà le bout de code dans La classe main.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
    
    import javax.mail.SendFailedException;
    import mail.MyMail ;
    public class teste
    {
    	public static void main(String args[]) throws Exception {
     String [] e={"sisiniya@yahoo.fr"}; //e-mail de Destinataire
    MyMail Mail = new MyMail("smtp.mail.yahoo.fr","monUser","monPassword","salut Sisiniya","Bonjour ... ","monCompte@yahoo.fr",e);
    
            
            try
            {
    	if(Mail.sendMail())
                   System.out.println(" emails envoye avec succee .");
            else
                System.err.println(" vous devez remplir les informations necessaire pour l'envoie de l'email .");
            }
            catch(SendFailedException err){
               System.err.println(err.getMessage());
            }
      }
    }
    En faite, l'envoi d'email marche bien quand j'utilise FAI de "MAROC Telecom ", mais lorsque je me connecte via modem internet de FAI " MEDITEL ", l'erreur que j'ai déjà signé est toujours s'est produit !!

    Je vous remercie pour Vos réponses.

    Sisiniya.

  5. #5
    Membre expert
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    2 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 938
    Points : 3 938
    Points
    3 938
    Par défaut
    Px tu faire voir le contenu de la methode sendMail? ou toute la classe Mail?

  6. #6
    Membre du Club Avatar de sisiniya
    Inscrit en
    Décembre 2007
    Messages
    223
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 223
    Points : 67
    Points
    67
    Par défaut
    Voilà le Code de MyMail :

    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
    103
    104
    105
    106
    107
    108
    109
     
     
     
    import java.util.ArrayList;
    import java.util.List;
    import java.util.Properties;
    import javax.mail.Authenticator;
    import javax.mail.Message;
    import javax.mail.MessagingException;
    import javax.mail.PasswordAuthentication;
    import javax.mail.Session;
    import javax.mail.Transport;
    import javax.mail.internet.InternetAddress;
    import javax.mail.internet.MimeMessage;
     
    public class MyMail {
     
    	private String smtpHostName;  // serveur smtp .
    	private String smtpAuthUser; 
    	private String smtpAuthpwd; 
     
        private String emailSubjectTxt ; //l'objectif .
        private String emailMsgTxt ;
    	private String emailFromAddress; //l'expediteur .
     
    	private  List<String> emailList=null ;
     
        public  MyMail(String server,String user,String password,String objet,String msg ,String exp,String[] dest){
            smtpHostName=server.trim();
            smtpAuthUser=user.trim();
            smtpAuthpwd=password;
            objet.trim();
            if(objet==null || objet.equals(""))
                objet="pas d'objet";
            emailSubjectTxt=objet;
            emailMsgTxt=msg;
            emailFromAddress=exp.trim();
            emailList =new ArrayList();
            if(dest!=null && dest.length > 0)
            for(int i=0 ;i<dest.length;i++){
                emailList.add(dest[i]);
            }
        }
     
     
        public void addEmail(String email){
            this.emailList.add(email);
        }
     
     
    	public boolean sendMail() throws MessagingException {
            boolean resultat =false ;
            if(smtpHostName==null ||smtpHostName.equals("")
             ||smtpAuthUser==null ||smtpAuthUser.equals("")
             ||smtpAuthpwd==null || smtpAuthpwd.equals("")
             ||emailMsgTxt ==null || emailMsgTxt.equals("") 
             || emailList.size()==0 )
                return false ;
     
    		boolean debug = true;
    		java.security.Security
    				.addProvider(new com.sun.net.ssl.internal.ssl.Provider());
    		//Set the host smtp address
    		Properties props = new Properties();
    		props.put("mail.transport.protocol", "smtp");
    		props.put("mail.smtp.starttls.enable","true");
    		props.put("mail.smtp.host", smtpHostName);
    		props.put("mail.smtp.auth", "true");
     
                Authenticator auth = new SMTPAuthenticator();
    		Session session = Session.getDefaultInstance(props, auth);
     
    		session.setDebug(debug);
     
    		// create a message
    		Message msg = new MimeMessage(session);
     
    		// set the from and to address
    		InternetAddress addressFrom = new InternetAddress(emailFromAddress);
    		msg.setFrom(addressFrom);
     
    		InternetAddress[] addressTo = new InternetAddress[emailList.size()];
    		for (int i = 0; i < emailList.size(); i++) {
    			addressTo[i] = new InternetAddress(emailList.get(i));
    		}
            resultat=true;
    		msg.setRecipients(Message.RecipientType.TO, addressTo);
     
    		// Setting the Subject and Content Type
    		msg.setSubject(emailSubjectTxt);
    		msg.setContent(emailMsgTxt, "text/plain");
    		Transport.send(msg);
            return resultat ;
    	}
     
     
    	/**
    	 * SimpleAuthenticator is used to do simple authentication when the SMTP
    	 * server requires it.
    	 */
    	private class SMTPAuthenticator extends javax.mail.Authenticator {
            @Override
    		public PasswordAuthentication getPasswordAuthentication(){
    			String username = smtpAuthUser;
    			String password = smtpAuthpwd;
    			return new PasswordAuthentication(username, password);
    		}
    	}
    }

    Merci pour L'aide .

  7. #7
    Membre éclairé Avatar de herch
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    655
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Canada

    Informations forums :
    Inscription : Mai 2006
    Messages : 655
    Points : 773
    Points
    773
    Par défaut
    salut,

    essaie en remplaçant cette ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    props.put("mail.smtp.auth", "true");
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    props.put("mail.smtps.auth", "true");
    et celle ci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    props.put("mail.transport.protocol", "smtp");
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    props.put("mail.transport.protocol", "smtps");
    sinon regarde la faq de javamail http://java.sun.com/products/javamail/FAQ.html, tu y trouveras des exemples avec gmail et yahoo

  8. #8
    Membre du Club
    Inscrit en
    Mars 2008
    Messages
    112
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 112
    Points : 67
    Points
    67
    Par défaut
    utilise le smtp de meditel: webmaster.meditel.ma

  9. #9
    Membre du Club Avatar de sisiniya
    Inscrit en
    Décembre 2007
    Messages
    223
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 223
    Points : 67
    Points
    67
    Par défaut
    Je vous remercie Pour vos réponse ,

    J'ai essayé la methode de " herch " mais le même problème .

    Pour " tntneo " : Est ce que webmaster.meditel.ma est un serveur SMTP de meditel ??

    Sisiniya.

Discussions similaires

  1. [WD18] Problème envoi Email via smtp Gmail
    Par taghzirt dans le forum WinDev
    Réponses: 10
    Dernier message: 07/06/2015, 00h00
  2. [codeigniter] problème envoie email
    Par Dr Rodney Mckay dans le forum Langage
    Réponses: 5
    Dernier message: 01/08/2012, 22h06
  3. Problème envoi Email exchange 2003
    Par nicolas0057 dans le forum Exchange Server
    Réponses: 7
    Dernier message: 10/01/2012, 16h59
  4. [WINDEV 7.5] Problème Envoi d'email
    Par boudincweole10 dans le forum WinDev
    Réponses: 9
    Dernier message: 20/12/2006, 19h16
  5. [Conception] Problème envoi d'emails
    Par Samuel78 dans le forum PHP & Base de données
    Réponses: 10
    Dernier message: 20/08/2006, 22h06

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo