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

Collection et Stream Java Discussion :

[JAVAMAIL] Envoi d'un mail


Sujet :

Collection et Stream Java

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : France, Loiret (Centre)

    Informations forums :
    Inscription : Avril 2008
    Messages : 58
    Par défaut [JAVAMAIL] Envoi d'un mail
    Bonsoir à tous,

    J'essaie d'envoyer un mail via l'API javamail. Je l'ai déjà fait mais il y a longtemps et je n'y arrive plus.

    Imaginons que j'ai les variables suivantes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    String domain = "mydomain.fr"
    String host = "smtp.mydomain.fr"
    String user = "monuser@mydomain.fr"
    String password = "mypassword"
    int port = 25
    Quel est le code pour envoyer un mail ?

    Merci d'avance, j'avoue que je suis bêtement coincé :s

    Bonne soirée,

    Romaric

  2. #2
    Expert confirmé
    Avatar de Marco46
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2005
    Messages
    4 419
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2005
    Messages : 4 419
    Par défaut
    1/ Télécharger Javamail.

    2/ Décompresser l'archive.

    3/ Aller voir dans le dossier démo.

    4/ Ouvrir le fichier msgsend.java

    Je comprends pas que les gens ne lisent jamais ni les readme ni les contenus des libs qu'ils téléchargent.

  3. #3
    Membre confirmé
    Inscrit en
    Octobre 2008
    Messages
    127
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 127
    Par défaut
    Salut
    voici un exemple typique d'envoi de mail via la librairie javamil
    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
     
     
    import java.io.*;
    import java.util.*;
    import javax.mail.*;
    import javax.mail.internet.*;
     
    public class Envoi {
     
    /** Destinataire du message. */
    protected String message_dest = "nobody@nobody.com";
    /* Objet du message. */
    protected String message_objet = " detail du sujet ";
    /** Destinataire du message en copie (CC). */
    protected String message_cc = "dest@hotmail.com";
    /** Texte du message. */
    protected String message_corps =
    "Bonjour dans une semaine vous recevrez de  " +
    "plus amples détails sur " +
    "le sujet de votre choix";
     
    /** Objet session de JavaMail. */
    protected Session session;
    /** Objet message de JavaMail. */
    protected Message mesg;
     
     
    public void envoyerMail() {
     
    // Nous devons passer les informations au serveur de messagerie sous
    // forme de propriétés car JavaMail en comporte beaucoup...
    Properties props = new Properties();
     
    // Votre réseau doit donner au serveur SMTP local le nom "nom_du_serveur_smtp"
     
    props.put("mail.smtp.host", "nom_du_serveur_smtp");
     
    // Créer l’objet Session.
    session = Session.getDefaultInstance(props, null);
    session.setDebug(true); //activer le mode verbeux !
     
    try {
    // Créer un message.
    mesg = new MimeMessage(session);
     
    // Adresse From - Indiquer la provenance du message
    mesg.setFrom(new InternetAddress("anonymous@service.domain"));
     
    // Adresse TO.
    InternetAddress toAddress = new InternetAddress(message_dest);
    mesg.addRecipient(Message.RecipientType.TO, toAddress);
     
    // Adresse CC.
    InternetAddress ccAddress = new InternetAddress(message_cc);
    mesg.addRecipient(Message.RecipientType.CC, ccAddress);
     
    // Objet.
    mesg.setSubject(message_objet);
     
    // Corps du message.
    mesg.setText(message_corps);
     
    // Enfin, envoyer le message !
    Transport.send(mesg);
     
    } catch (MessagingException ex) {
    while ((ex = (MessagingException)ex.getNextException()) != null) {
    ex.printStackTrace();
    }
    }
    }
    /** Programme principal*/
    public static void main(String[] av) {
    Envoi env = new Envoi();
    env.envoyerMail();
    }
    }
    Bonne chance

  4. #4
    Futur Membre du Club
    Inscrit en
    Avril 2008
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 6
    Par défaut JavaMail
    Citation Envoyé par totoz Voir le message
    Salut
    voici un exemple typique d'envoi de mail via la librairie javamil
    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
     
     
    import java.io.*;
    import java.util.*;
    import javax.mail.*;
    import javax.mail.internet.*;
     
    public class Envoi {
     
    /** Destinataire du message. */
    protected String message_dest = "nobody@nobody.com";
    /* Objet du message. */
    protected String message_objet = " detail du sujet ";
    /** Destinataire du message en copie (CC). */
    protected String message_cc = "dest@hotmail.com";
    /** Texte du message. */
    protected String message_corps =
    "Bonjour dans une semaine vous recevrez de  " +
    "plus amples détails sur " +
    "le sujet de votre choix";
     
    /** Objet session de JavaMail. */
    protected Session session;
    /** Objet message de JavaMail. */
    protected Message mesg;
     
     
    public void envoyerMail() {
     
    // Nous devons passer les informations au serveur de messagerie sous
    // forme de propriétés car JavaMail en comporte beaucoup...
    Properties props = new Properties();
     
    // Votre réseau doit donner au serveur SMTP local le nom "nom_du_serveur_smtp"
     
    props.put("mail.smtp.host", "nom_du_serveur_smtp");
     
    // Créer l’objet Session.
    session = Session.getDefaultInstance(props, null);
    session.setDebug(true); //activer le mode verbeux !
     
    try {
    // Créer un message.
    mesg = new MimeMessage(session);
     
    // Adresse From - Indiquer la provenance du message
    mesg.setFrom(new InternetAddress("anonymous@service.domain"));
     
    // Adresse TO.
    InternetAddress toAddress = new InternetAddress(message_dest);
    mesg.addRecipient(Message.RecipientType.TO, toAddress);
     
    // Adresse CC.
    InternetAddress ccAddress = new InternetAddress(message_cc);
    mesg.addRecipient(Message.RecipientType.CC, ccAddress);
     
    // Objet.
    mesg.setSubject(message_objet);
     
    // Corps du message.
    mesg.setText(message_corps);
     
    // Enfin, envoyer le message !
    Transport.send(mesg);
     
    } catch (MessagingException ex) {
    while ((ex = (MessagingException)ex.getNextException()) != null) {
    ex.printStackTrace();
    }
    }
    }
    /** Programme principal*/
    public static void main(String[] av) {
    Envoi env = new Envoi();
    env.envoyerMail();
    }
    }
    Bonne chance

    Voilà, je suis débutant concernant le javamail, je vais faire une application java que je peut à la travers envoyer un mail de n'importe quel adresse (hotmail, yahoo, gmail, ...) et pour n'importe quel adresse, mais tous les exemples que j'ai déjà vu toujours utilisent un host prédéfinie (props.put("mail.smtp.host", "smtp.gmail.com")), est ce qu'il y a quelqu'un qui peut m'aider à le faire correctement?, Merci

  5. #5
    Membre confirmé
    Inscrit en
    Octobre 2008
    Messages
    127
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 127
    Par défaut
    Citation Envoyé par lion2080 Voir le message
    Voilà, je suis débutant concernant le javamail, je vais faire une application java que je peut à la travers envoyer un mail de n'importe quel adresse (hotmail, yahoo, gmail, ...) et pour n'importe quel adresse, mais tous les exemples que j'ai déjà vu toujours utilisent un host prédéfinie (props.put("mail.smtp.host", "smtp.gmail.com")), est ce qu'il y a quelqu'un qui peut m'aider à le faire correctement?, Merci
    (props.put("mail.smtp.host", "smtp.gmail.com")),
    dans cette partie tu dois indiquer le nom de votre serveur SMTP
    smtp.gmail.com est un exemple de serveur Smtp "gmail" vous pouvez utiliser d'autres serveurs
    personnellement j'utilise le serveur hMailServer il est gratuit ,facile pour la prise en main et offre des options très intéressantes.
    j'espère que j'ai répondu à ta question si non n'hésiter pas de revenir vers cette discussion.
    bonne chance

  6. #6
    Futur Membre du Club
    Inscrit en
    Avril 2008
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 6
    Par défaut Java Mail
    Citation Envoyé par totoz Voir le message
    (props.put("mail.smtp.host", "smtp.gmail.com")),
    dans cette partie tu dois indiquer le nom de votre serveur SMTP
    smtp.gmail.com est un exemple de serveur Smtp "gmail" vous pouvez utiliser d'autres serveurs
    personnellement j'utilise le serveur hMailServer il est gratuit ,facile pour la prise en main et offre des options très intéressantes.
    j'espère que j'ai répondu à ta question si non n'hésiter pas de revenir vers cette discussion.
    bonne chance
    Merci totoz pour votre rapide réponse,
    En faite, j'ai une application qui contient beaucoup d'utilisateurs, chaque utilisateur à sa propre email, donc certainement je peut avoir plus qu'un serveur SMTP ( smtp.gmail.com, smtp.mail.yahoo.com, smtp.live.com, ...) dans l'adresse from, donc comment puis-je connaitre le bon serveur SMTP a partir de l'adresse mail?. D'autre part, est ce que je peut envoyer un mail sans authentification (bien sûr pour n'importe quel serveur)?.
    j'espère que j'ai clarifié un peut mon problème.
    Merci.

  7. #7
    Membre confirmé
    Inscrit en
    Octobre 2008
    Messages
    127
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 127
    Par défaut
    Salut
    Merci lion2080 pour ton retour
    pour ta question: avec un serveur smtp de gmail "smtp.gmail.com"vous pouvez envoyer des E mails vers hotmail ,yahoo..etc le problème est qu'il faut s'identifier par un compte Gmail parce que l'envoie est effectué depuis ce compte donc il faut que tu ajoutes les lignes de codes suivantes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    class SMTPAuthenticator extends javax.mail.Authenticator {
        public PasswordAuthentication getPasswordAuthentication() {
           String username = "un_compte_gmail@gmail.com";
           String password = "mot_de_passe;";
           return new PasswordAuthentication(username, password);
        }
    }
    et puis linserer dans ton classe d'envoie les lignes suivantes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
              Authenticator auth = new SMTPAuthenticator();
     
     
     
    		session = Session.getDefaultInstance(props, auth);
    bonne chance

  8. #8
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Non mais en fait c'est plus simple : le serveur SMTP ne dépend pas des utilisateurs ni de leurs adresses email.

    Le serveur SMTP dépend de l'ordinateur, ou plutôt, des services mails accessibles à sur le réseau de cet ordinateur. Genre, on peut utiliser le SMTP fourni par son FAI, ou un autre SMTP. Comme on veut. Peu importe. Mais on utilise le même pour envoyer de n'importe qui à n'importe qui.

    Bref, demande-toi quel SMTP tu utiliserais sur l'ordinateur qui fait tourner ton programme. Eh bien ton programme utilise le même. Pour tout le monde.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  9. #9
    Futur Membre du Club
    Inscrit en
    Avril 2008
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 6
    Par défaut
    Citation Envoyé par thelvin Voir le message
    Non mais en fait c'est plus simple : le serveur SMTP ne dépend pas des utilisateurs ni de leurs adresses email.

    Le serveur SMTP dépend de l'ordinateur, ou plutôt, des services mails accessibles à sur le réseau de cet ordinateur. Genre, on peut utiliser le SMTP fourni par son FAI, ou un autre SMTP. Comme on veut. Peu importe. Mais on utilise le même pour envoyer de n'importe qui à n'importe qui.

    Bref, demande-toi quel SMTP tu utiliserais sur l'ordinateur qui fait tourner ton programme. Eh bien ton programme utilise le même. Pour tout le monde.
    Merci totoz et thelvin pour vos réponses,

    Je suis intéressé par l'idée de thelvin pour utilisé le SMTP fourni par mon FAI, mais je pense a chaque fois qu'un utilisateur veut envoyer un email, il doit insérer le mot de passe de son compte mail. Alors là, il faut que je passe le compte mail et le mot de passe comme des paramètres de cette façon.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    class SMTPAuthenticator extends javax.mail.Authenticator {
        public PasswordAuthentication getPasswordAuthentication() {
           return new PasswordAuthentication("un_compte@xxxxxxx.xxx",  "mot_de_passe;");
        }
    }
    Merci, je veut l'essayer

  10. #10
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Bon écoute, c'est pourtant pas compliqué.

    Quand tu es au boulot/à l'école, avec Thunderbird, tu peux envoyer des mails, soit avec ton adresse perso, soit avec ton adresse du boulot/de l'école. Pourtant, dans Thunderbird tu n'as configuré qu'un seul serveur SMTP, celui que le boulot/l'école demande. Et on ne t'a pas demandé de login/mdp pour envoyer les mails.

    Bon, alors si Thunderbird fait comme ça, tout le monde peut faire comme ça. En fait, c'est comme ça que ça marche.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  11. #11
    Expert confirmé
    Avatar de Marco46
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2005
    Messages
    4 419
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2005
    Messages : 4 419
    Par défaut
    Dans la pratique la plupart des FAI filtrent les flux SMTP, seuls ceux à destination de leur propre serveur SMTP sont autorisés.

    C'est pourquoi nombre de services comme GMail n'utilisent pas SMTP sur le port 25 mais SMTP-AUTH ou carrément SMTPS qui passent au travers de flux chiffrés et sur un autre port.

    Autre chose à savoir, SMTP ne nécessite aucune authentification d'aucune sorte d'où en partie les problèmes de spam à l'échelle mondiale. C'est le protocole qui est comme ça, et d'où le filtrage des FAIs (méthode bourrine certes mais relativement efficace). SMTP-AUTH et SMTPS nécessitent eux des authentification. Donc selon le protocole utilisé il faut un login/mdp ou pas.

  12. #12
    Futur Membre du Club
    Inscrit en
    Avril 2008
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 6
    Par défaut Java Mail
    Citation Envoyé par thelvin Voir le message
    Bon écoute, c'est pourtant pas compliqué.

    Quand tu es au boulot/à l'école, avec Thunderbird, tu peux envoyer des mails, soit avec ton adresse perso, soit avec ton adresse du boulot/de l'école. Pourtant, dans Thunderbird tu n'as configuré qu'un seul serveur SMTP, celui que le boulot/l'école demande. Et on ne t'a pas demandé de login/mdp pour envoyer les mails.

    Bon, alors si Thunderbird fait comme ça, tout le monde peut faire comme ça. En fait, c'est comme ça que ça marche.
    Merci thelvin pour vos conseilles,

    Est ce que vous pouvez SVP me donner un exemple qui se tourne correctement pour un envoi sans authentification ou un lien qui peut m'aider.

    Merci infiniment.

  13. #13
    Futur Membre du Club
    Inscrit en
    Avril 2008
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 6
    Par défaut Java Mail
    Citation Envoyé par Marco46 Voir le message
    Dans la pratique la plupart des FAI filtrent les flux SMTP, seuls ceux à destination de leur propre serveur SMTP sont autorisés.

    C'est pourquoi nombre de services comme GMail n'utilisent pas SMTP sur le port 25 mais SMTP-AUTH ou carrément SMTPS qui passent au travers de flux chiffrés et sur un autre port.

    Autre chose à savoir, SMTP ne nécessite aucune authentification d'aucune sorte d'où en partie les problèmes de spam à l'échelle mondiale. C'est le protocole qui est comme ça, et d'où le filtrage des FAIs (méthode bourrine certes mais relativement efficace). SMTP-AUTH et SMTPS nécessitent eux des authentification. Donc selon le protocole utilisé il faut un login/mdp ou pas.
    Merci Marco46 pour votre réponse,

    Est ce que vous pouvez m'aider par un exemple qui n'utilise pas l'authentification ?
    Merci.

  14. #14
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Totoz a déjà donné le code qui marche sans authentification .

    Tu dois juste trouver le serveur SMTP fourni sur ton réseau, et mettre ça à la place de nom_du_serveur_smtp.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  15. #15
    Futur Membre du Club
    Inscrit en
    Avril 2008
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 6
    Par défaut
    Citation Envoyé par thelvin Voir le message
    Totoz a déjà donné le code qui marche sans authentification .

    Tu dois juste trouver le serveur SMTP fourni sur ton réseau, et mettre ça à la place de nom_du_serveur_smtp.
    Merci a tous,

    Le code de Totoz ça fonctionne correctement lorsque j'ai mis le serveur SMTP de mon FAI.

    Merci encore une fois

  16. #16
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    158
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 158
    Par défaut
    Bonjour,
    je veux envoyé un mail a partir d'une application , j'ai essayé le code de Totoz .
    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
    import java.io.*;
    import java.util.*;
    import javax.mail.*;
    import javax.mail.internet.*;
     
    public class Envoi {
     
    	/** Destinataire du message. */
    	protected String message_dest = "dest_boite@gmail.com";
    	/* Objet du message. */
    	protected String message_objet = " detail du sujet ";
    	/** Destinataire du message en copie (CC). */
    	protected String message_cc = "dest_boite@gmail.com";
    	/** Texte du message. */
    	protected String message_corps =
    	"Bonjour dans une semaine vous recevrez de  " +
    	"plus amples détails sur " +
    	"le sujet de votre choix";
     
    	/** Objet session de JavaMail. */
    	protected Session session;
    	/** Objet message de JavaMail. */
    	protected Message mesg;
     
     
    	public void envoyerMail() {
     
    	// Nous devons passer les informations au serveur de messagerie sous
    	// forme de propriétés car JavaMail en comporte beaucoup...
    	Properties props = new Properties();
     
    	// Votre réseau doit donner au serveur SMTP local le nom "nom_du_serveur_smtp"
     
    	Authenticator auth = new SMTPAuthenticator();
    	props.put("mail.smtp.host", "smtp.gmail.com");
    	session = Session.getDefaultInstance(props, auth);
     
    	// Créer l’objet Session.
    	session.setDebug(true); //activer le mode verbeux !
     
     
     
    	try {
    	// Créer un message.
    	mesg = new MimeMessage(session);
     
    	// Adresse From - Indiquer la provenance du message
    	mesg.setFrom(new InternetAddress("anonymous@service.com"));
     
    	// Adresse TO.
    	InternetAddress toAddress = new InternetAddress(message_dest);
    	mesg.addRecipient(Message.RecipientType.TO, toAddress);
     
    	// Adresse CC.
    	InternetAddress ccAddress = new InternetAddress(message_cc);
    	mesg.addRecipient(Message.RecipientType.CC, ccAddress);
     
    	// Objet.
    	mesg.setSubject(message_objet);
     
    	// Corps du message.
    	mesg.setText(message_corps);
     
    	// Enfin, envoyer le message !
    	Transport.send(mesg);
     
    	} catch (MessagingException ex) {
    	while ((ex = (MessagingException)ex.getNextException()) != null) {
    	ex.printStackTrace();
    	}
    	}
    	}
    	class SMTPAuthenticator extends javax.mail.Authenticator {
    	    public PasswordAuthentication getPasswordAuthentication() {
    	       String username = "un_compte_gmail@gmail.com";
    	       String password = "mot_de_passe";
    	       return new PasswordAuthentication(username, password);
    	    }
    	}
     
    	/** Programme principal*/
    	public static void main(String[] av) {
    	Envoi env = new Envoi();
    	env.envoyerMail();
    	}
    }
    il m'affiche une exception :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    DEBUG: setDebug: JavaMail version 1.3.2
    DEBUG: getProvider() returning javax.mail.Provider[TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Sun Microsystems, Inc]
    DEBUG SMTP: useEhlo true, useAuth false
    DEBUG SMTP: trying to connect to host "smtp.gmail.com", port 25, isSSL false
    et je connais pas l'adresse SMTP de mon fai , y'a t il une solution ?


    j'ai installé HMailServer pour l'utiliser mais je ne sais pas comment adapter ce code avec HMailServer.

    merci pour votre aide

  17. #17
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Citation Envoyé par mimish Voir le message
    et je connais pas l'adresse SMTP de mon fai , y'a t il une solution ?
    La regarder sur son assistance en ligne.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  18. #18
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    158
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 158
    Par défaut
    ok j'ai trouvez l'adresse SMTP de min Fai c'est :smtp.djaweb.com
    mais il m'affiche toujours l'erreur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    DEBUG: setDebug: JavaMail version 1.3.2
    DEBUG: getProvider() returning javax.mail.Provider[TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Sun Microsystems, Inc]
    DEBUG SMTP: useEhlo true, useAuth false
    DEBUG SMTP: trying to connect to host "smtp.djaweb.com", port 25, isSSL false
    Exception in thread "main" java.lang.ClassCastException: java.net.ConnectException cannot be cast to javax.mail.MessagingException
    	at Envoi.envoyerMail(Envoi.java:68)
    	at Envoi.main(Envoi.java:84)

  19. #19
    Expert confirmé
    Avatar de Marco46
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2005
    Messages
    4 419
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2005
    Messages : 4 419
    Par défaut
    Pour moi tu as une erreur sur cette ligne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    while ((ex = (MessagingException)ex.getNextException()) != null) {
    	ex.printStackTrace();
    qui empêche de voir la véritable exception.

    Entre nous faut arrêter les boucles (ou la moquette faut voir) dans le catch, un simple ex.printStackTrace(); suffit amplement.

Discussions similaires

  1. [javamail] envoi mail avec message en pièce jointe
    Par k4eve dans le forum API standards et tierces
    Réponses: 5
    Dernier message: 16/11/2007, 11h17
  2. [JavaMail] exception lors d'envoi d'un mail
    Par sovop dans le forum API standards et tierces
    Réponses: 2
    Dernier message: 12/01/2007, 11h51
  3. JavaMail:Envoi de Mail
    Par gagalive dans le forum API standards et tierces
    Réponses: 21
    Dernier message: 28/06/2006, 17h53
  4. Problème lors de l'envoie d'un mail (JavaMail)
    Par Invité dans le forum API standards et tierces
    Réponses: 7
    Dernier message: 09/05/2006, 10h23
  5. [javamail] pb lors de l'envoi d'un mail
    Par mawashee dans le forum API standards et tierces
    Réponses: 1
    Dernier message: 08/09/2005, 16h50

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