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

API standards et tierces Java Discussion :

[Javamail] Authentification obligatoire?


Sujet :

API standards et tierces Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Avatar de CPI_en_mousse
    Homme Profil pro
    Développeur Java
    Inscrit en
    Avril 2006
    Messages
    332
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2006
    Messages : 332
    Par défaut [Javamail] Authentification obligatoire?
    Bonjour,

    j'essaye d'envoyer un mail avec JavaMail.

    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
        public static void sendMail(String sender, String receiver, Mail mail){
            String from = sender;
            String to = receiver;
            String subject = mail.getTitle();
            String content = mail.getMail();
     
            try {
                Properties props = System.getProperties();
                props.put("mail.smtp.host", "smtp.gmail.com");
                props.put("mail.smtp.port", "587");
                Session session = Session.getDefaultInstance(props, null);
                MimeMessage message = new MimeMessage(session);
                message.setFrom(new InternetAddress(from));
                message.addRecipient(Message.RecipientType.TO, new InternetAddress(to));
                message.setSubject(subject);
     
                //Envoi en HTML
                message.setContent(content, "text/html");
     
                javax.mail.Transport.send(message);
     
            } catch (Exception e) {
                System.err.println("the sending failed : "+e.getMessage());
            }
        }
    je n'ai pas d'erreur à l'execution de cette methode mais je n'ai pas non plus de mail a l'arrivé dans ma boite.
    l'authentification est elle necessaire ou pas. j'ai lu ici que ce n'etait pas forcement le cas

  2. #2
    Rédacteur
    Avatar de Hikage
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    1 177
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 177
    Par défaut
    Je peux me tromper bien sur mais je pense que l'authentification doit être obligatoire ( dans le cas de GMail je veux dire ).

    Ayant déjà configuré des serveurs mails, je doute que Google laisse une ouverture à leur serveur smtp a des spammeurs ...

    Le plus étonnant, c'est qu'une erreur aurait du etre lancée je pense.

    Essaie ceci dans une console dos ou shell :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    telnet smtp.gmail.com 587
    helo localhost
    mail from: tonemail@tondomaine.com
    rcpt to: email.destination@domainedestination.com
    data
    blablabla
    .
    Ca envoie un mail "simple" via le protocol SMTP.
    Et tu devrais voir les réponses du serveur
    Hikage
    SCJP / SCWCD & SCWSJD Certified / Spring Framework Certified
    [Personal Web] [CV]

    F.A.Q Spring Framework - Participez !

  3. #3
    Membre éclairé
    Avatar de CPI_en_mousse
    Homme Profil pro
    Développeur Java
    Inscrit en
    Avril 2006
    Messages
    332
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2006
    Messages : 332
    Par défaut
    ca n'as pas l'air de fonctionner:

    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
    florian@HP-QSPIN:~$ telnet smtp.gmail.com 587
    Trying 64.233.183.109...
    Connected to gmail-smtp.l.google.com.
    Escape character is '^]'.
    220 mx.google.com ESMTP 2sm1641618nfv
    helo    
    250 mx.google.com at your service
    hello
    502 5.5.1 Unrecognized command 2sm1641618nfv
    helo localhost
    250 mx.google.com at your service
    mail from: yyyy@qspin.be
    530 5.7.0 Must issue a STARTTLS command first 2sm1641618nfv
    rcpt to xxxxxx@gmail.com
    530 5.7.0 Must issue a STARTTLS command first 2sm1641618nfv
    data
    530 5.7.0 Must issue a STARTTLS command first 2sm1641618nfv
    exit
    502 5.5.1 Unrecognized command 2sm1641618nfv
    quit
    221 2.0.0 mx.google.com closing connection 2sm1641618nfv
    Connection closed by foreign host.
    florian@HP-QSPIN:~$

  4. #4
    Membre expérimenté Avatar de coco62
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    237
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 237
    Par défaut
    Je penche aussi pour le user/password
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Session session = Session.getDefaultInstance(props);
    session.setDebug(true);
     
    MimeMessage message = new MimeMessage(session);
    message.setFrom(new InternetAddress(from));
    message.addRecipient(Message.RecipientType.TO, new InternetAddress(to));
    message.setSubject("Hello");
    message.setText("Hello World");
     
    Transport tr = session.getTransport("smtp");
    tr.connect(smtpHost, username, password);
    message.saveChanges();

  5. #5
    Membre éclairé
    Avatar de CPI_en_mousse
    Homme Profil pro
    Développeur Java
    Inscrit en
    Avril 2006
    Messages
    332
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2006
    Messages : 332
    Par défaut
    salut,

    J'ai modifier ma fonction comme suivant :

    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
        public static void sendMail(String sender, String receiver, Mail mail){
            String from = sender;
            String to = receiver;
            String subject = mail.getTitle();
            String content = mail.getMail();
     
            try {
                Properties props = System.getProperties();
                props.put("mail.smtp.host", "smtp.gmail.com");
                props.put("mail.smtp.port", "587");
                Session session = Session.getDefaultInstance(props, null);
                MimeMessage message = new MimeMessage(session);
                message.setFrom(new InternetAddress(from));
                message.addRecipient(Message.RecipientType.TO, new InternetAddress(to));
                message.setSubject(subject);
     
                //Envoi en HTML
                message.setContent(content, "text/html");
     
                Transport tr = session.getTransport("smtp");           
                tr.connect("smtp.gmail.com", "monUserame", "monpasswrd");
                message.saveChanges();
     
                javax.mail.Transport.send(message);
     
            } catch (Exception e) {
                System.err.println("the sending failed : "+e.getMessage());
            }
        }
    je 'nai pas de message d'erreur par conte je n'ai pas non plus de mail à l'arrivé

  6. #6
    Rédacteur/Modérateur

    Avatar de bouye
    Homme Profil pro
    Information Technologies Specialist (Scientific Computing)
    Inscrit en
    Août 2005
    Messages
    6 904
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Nouvelle-Calédonie

    Informations professionnelles :
    Activité : Information Technologies Specialist (Scientific Computing)
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2005
    Messages : 6 904
    Billets dans le blog
    54
    Par défaut
    Peux-tu essayer de rajouter :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    props.put("mail.smtp.auth", "true");
    Merci de penser au tag quand une réponse a été apportée à votre question. Aucune réponse ne sera donnée à des messages privés portant sur des questions d'ordre technique. Les forums sont là pour que vous y postiez publiquement vos problèmes.

    suivez mon blog sur Développez.

    Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. ~ Rich Cook

Discussions similaires

  1. [JavaMail] Authentification smtp
    Par ArithmeticException dans le forum API standards et tierces
    Réponses: 9
    Dernier message: 31/10/2016, 02h46
  2. [Javamail] Authentification gmail
    Par sasuke123456 dans le forum API standards et tierces
    Réponses: 5
    Dernier message: 24/01/2011, 18h27
  3. [JavaMail] Problème d'authentification pr l'envoi de mail avec Yahoo
    Par hikamovic dans le forum API standards et tierces
    Réponses: 3
    Dernier message: 07/06/2009, 12h51
  4. Réponses: 3
    Dernier message: 21/04/2008, 10h24
  5. [JavaMail] problème d'authentification sous Unix
    Par Michalak dans le forum API standards et tierces
    Réponses: 3
    Dernier message: 10/12/2007, 08h44

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