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

Java Discussion :

Javamail - Problème pour envoyer un mail


Sujet :

Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 17
    Par défaut Javamail - Problème pour envoyer un mail
    Bonjour alors voila j'expose mon problème:

    A l'aide de javamail je voudrais juste pouvoir envoyer un mail (toujours le même) a certaine personne. Plus précisément dés qu'on modifie un rendez vous je voudrais que la personne soit prévenue par mail. Le problème c'est que je connait mal javamail et après quelque heure j'obtiens ceci et cela ne marche pas :

    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
     
    package ***;
     
     
     
     
    import java.util.Properties;
     
    import javax.mail.Session;
    import javax.mail.Message;
    import javax.mail.internet.MimeMessage;
    import javax.mail.internet.InternetAddress;
    import javax.mail.Transport;
     
    import javax.mail.internet.AddressException;
    import javax.mail.NoSuchProviderException;
    import javax.mail.MessagingException;
     
    public class SendMail {
    public static void main(String[] args) {
     
    String emailfrom = "***@live.fr";
    String emailto = "***@gmail.com";
    String host = "smtp.gmail.com";
     
    //Récupére les propriétés du systéme
    Properties props = System.getProperties();
     
    //Spécification du serveur mail
    props.put("smtp.gmail.host",host);
    props.put("smtp.gmail.auth","true");
     
    //Récupère la session
    Session sessionMail = Session.getInstance(props,null);
     
    //Définition du message
    MimeMessage message = new MimeMessage(sessionMail);
     
    //Afficher Mode Debug
    sessionMail.setDebug(true);
     
     
    try{
    message.setFrom(new InternetAddress(emailfrom));
    //Spécification du destinataire
    message.addRecipient(Message.RecipientType.TO, new InternetAddress(emailto));
    //Sujet du message
    message.setSubject("Test API JavaMail");
    //Texte du message
    message.setText("Yeah!!");
    //Envoie le message avec un smtp authentifié
    message.saveChanges(); // implicit with send()
    Transport transport = sessionMail.getTransport("smtp");
    transport.connect(host,"*****@gmail.com","mdp");
    transport.sendMessage(message, message.getAllRecipients());
    transport.close();
     
    }catch(Exception e){
    System.out.print("error");
    }
    }
    }
    Donc je vous montre le résultat :


    run:
    DEBUG: setDebug: JavaMail version 1.4.4
    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
    errorBUILD SUCCESSFUL (total time: 21 seconds)


    En espérant que quelqu'un pourra m'aider, merci de m'avoir lu.

  2. #2
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    regardez la documentation de gmail, il est décrit comment configurer ses client Email, notament, regardez la partie qui précise qu'il faut du SSL, qu'il faut s'authentifier et tout le toutim, votre code ne fait rien de tout ça.

    Aussi, remplacez cet affreux
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    }catch(Exception e){
    System.out.print("error");
    }
    Par un affichage en bonne et due forme de l'exception

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 17
    Par défaut
    Voila j'ai remplacer mon exception, enfin l'affichage et j'ai ça :

    DEBUG: setDebug: JavaMail version 1.4.4
    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
    error : Could not connect to SMTP host: smtp.gmail.com, port: 25

    Donc deja si c'est un probleme de port, je ne sais pas comment le modifier car dans mon code je n'ai pas dit d'utiliser le port 25, ensuite pour gmail j'ai ceci :

    Serveur POP : pop.gmail.com (sur activation de l'option POP de GMail)
    Serveur SMTP : smtp.gmail.com
    Serveur IMAP : imap.gmail.com

    Donc je crois que ce que j'ai mis c'est bon, ensuite pour ce que vous m'avez dis à propos du SSl je veux bien me pencher sur le sujet mais malgrés tout les tuto que j'ai regardé, aucun se ressemble vraiment et je ne comprend pas trés bien comment se servir de javamail. Pouvez vous m'aider, meme en Pseudo code mais pour le principe. Merci de votre aide.

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 17
    Par défaut
    J'ai trouvé la solution :

    props.put("mail.smtp.host", "smtp.gmail.com");
    props.put("mail.smtp.port", "587");
    props.put("mail.smtp.auth", "true");
    props.put("mail.smtp.starttls.enable", "true");

    Voila ce qu'il faut pour gmail =) merci de ton aide.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 4
    Dernier message: 10/03/2010, 12h03
  2. Problème pour envoyer une pj par mail
    Par bobic dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 15/04/2008, 09h07
  3. [SBS 2003] Problème pour envoyer mail vers 1 domaine
    Par arnaud_verlaine dans le forum Exchange Server
    Réponses: 0
    Dernier message: 14/02/2008, 14h27
  4. Problème pour envoyer un e-mail
    Par Djohn dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 30/07/2007, 18h59
  5. Réponses: 1
    Dernier message: 03/12/2005, 16h17

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