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

Entrée/Sortie Java Discussion :

Problème envoi mail avec java


Sujet :

Entrée/Sortie Java

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    41
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2008
    Messages : 41
    Points : 37
    Points
    37
    Par défaut Problème envoi mail avec java
    Salut tout le monde,
    C'est encore moi, j'ai toujours un problème avec mon envoi de mail, depuis ce temps ça dur. J'ai cherché sur le net et rien donc je reviens vers vous.
    Voici mon nouveau code, j'envois un mail sur hotmail avec un une adresse mail de destination sur yahoo donc le SMTP est :smtp.mail.yahoo.fr port 995 il me semble.
    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
    package monPaquet;
     
    import java.io.*;
    import java.net.Socket;
    import java.util.Date;
    import java.util.StringTokenizer;
     
    public class MailIo {
            public MailIo() {
            }
            public static boolean sendMail(Socket sock, String localHost,
                            String Destinataire, String from, String subject, String message)
                            throws IOException {
                    //connection a la socket passe par param
                    out = new PrintWriter(sock.getOutputStream());
                    in = new BufferedReader(new InputStreamReader(sock.getInputStream()));
                    //on recoi la ligne qui nous dit que l'on est connecté
                    receive();
                    //on envoi la premiere ligne qui indique de qui elle provien
                    send("HELO " + localHost);
                    //on nous dit qu'elle a bien etait recu
                    receive();
                    //on envoi l'adresse de l'expediteur
                    send("MAIL FROM: <" + from + ">");
                    //on nous dit que ca c'est bien passe
                    receive();
                    //on envoi l'adresse du destinataire
                    send("RCPT TO: <" + Destinataire + ">");
                    //on recupere la reponse
                    receive();
                    //on passe au chose serieuse pour commencer l'envoi du corps
                    send("DATA");
                    //on verifie que le serveur soit pret
                    receive();
                    //on envoi plusieur balise utile
                    send("Subject: " + subject);
                    send("Date: " + new Date());
                    send("Reply-To:" + from);
                    send("To: " + Destinataire);
                    //on envoi cahque ligne separement en utilisant \n comme delimitateur
                    StringTokenizer tokenizer = new StringTokenizer(message, "\n");
                    //la ligne ci dessous se traduit par : tant qu'il y a encore des ligne
                    while (tokenizer.hasMoreTokens())
                            send(tokenizer.nextToken());
                    //pour finir l'envoi d'un mail il faut envoi sur une ligne un seul point
                    send(".");
                    //on verifie que le mail a etait accepte
                    receive();
                    //on quitte
                    send("QUIT");
                    //on nous dit que ca a bien quitter
                    receive();
                    //on ferme les flux
                    in.close();
                    out.close();
                    sock.close();
                    return true;
            }
            //methode qui recoit les information du servveur
            private static void receive() throws IOException {
                    String line = in.readLine();
                    if (line != null) {
                            System.out.println(line);
                            System.out.println("\n");
                    }
            }
            //methode qui envoi des infos au serveur
            private static void send(String s) {
                    System.out.print(s);
                    System.out.print("\r\n");
                    System.out.flush();
                    out.print(s);
                    out.print("\r\n");
                    out.flush();
            }
            private static BufferedReader in;
            private static PrintWriter out;
     
     
            public static void main(String args[]) throws Exception
            {
                Socket sock = new Socket("smtp.mail.yahoo.fr ",995);
                MailIo.sendMail(sock,"localhost","??????@hotmail.com","?????@yahoo.fr","Test","Salut si ça marche c'est cool");
     
            }
     
    }
    et je me prends une erreur:
    java.net.UnknownHostException: smtp.mail.yahoo.fr
    at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:153)
    at java.net.Socket.connect(Socket.java:452)
    at java.net.Socket.connect(Socket.java:402)
    at java.net.Socket.<init>(Socket.java:309)
    at java.net.Socket.<init>(Socket.java:124)
    at monPaquet.MailIo.main(MailIo.java:82)
    Exception in thread "main"
    Merci pour votre aide

  2. #2
    Membre régulier
    Inscrit en
    Mai 2008
    Messages
    126
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 126
    Points : 91
    Points
    91
    Par défaut
    et bien il me semble que l'erreur parle d'elle même non ?
    ton nom d'host doit être erroné :s

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Août 2006
    Messages
    14
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 14
    Points : 9
    Points
    9
    Par défaut
    Ptet que ça sert à rien ce que je vais dire, mais y a pas comme un caractère en trop dans le nom du serveur ? genre un espace ?

    (dans le main, la ligne où tu instancies la socket)

Discussions similaires

  1. [PowerShell] Problème envoi mail avec Powershell
    Par patito1975 dans le forum Scripts/Batch
    Réponses: 3
    Dernier message: 25/06/2015, 11h04
  2. [AC-2013] Problème envoi mail avec O365 et Pack 2013
    Par stsym dans le forum Macros Access
    Réponses: 1
    Dernier message: 06/03/2014, 04h56
  3. Problème envoi mail avec serveur Lotus
    Par Filippo dans le forum ODS et reporting
    Réponses: 4
    Dernier message: 02/12/2010, 16h13
  4. Problème envoi mail avec linkbutton
    Par JCMANSION dans le forum VB.NET
    Réponses: 2
    Dernier message: 29/09/2010, 17h34
  5. Problème envoi mail avec SendObject
    Par quanou dans le forum VBA Access
    Réponses: 2
    Dernier message: 13/09/2008, 20h34

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