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] Envoi mails et extraction mails depuis fichier txt


Sujet :

API standards et tierces Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Analyste Concepteur[Secteur Banque/assurance]/ Ingénieur d'état en informatique
    Inscrit en
    Août 2007
    Messages
    89
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Maroc

    Informations professionnelles :
    Activité : Analyste Concepteur[Secteur Banque/assurance]/ Ingénieur d'état en informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2007
    Messages : 89
    Par défaut [Javamail] Envoi mails et extraction mails depuis fichier txt
    Bonjour tout le monde,

    la fonction envoiMails permette d'envoyer un mail (existant dans un fichier txt :mailfile) à plusieurs destinataires (emails dans un fichier destfile.txt),ma question est comment je pourrais adapter cette méthode pour qu'elle soit appellée depuis le main ,ou bien comment préciser l'endroit des fichiers en question dans cette méthode .

    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
    public static void envoiMails(String [] mails){
            // Vérification du nombre d'arguments
            if (mails.length != 4) 
            {
              System.out.println ("usage: java from smtphost mailfile destfile");
              System.exit (1); 
            }
           // Récupération des arguments
            String from     = mails [0];
            String smtphost = mails [1];
            String mailFile = mails [2];
            String destFile = mails [3];
     
            try
            {
              // Ouverture du fichier contenant le sujet + le message à envoyer
              // et du fichier contenant les destinataires
              BufferedReader mailReader = new BufferedReader (new FileReader (mailFile));
              BufferedReader destReader = new BufferedReader (new FileReader (destFile));
              affiche("accès aux fichiers destinataires & contenu Mail");
     
              // Lecture du sujet (première ligne)
              String  subject = mailReader.readLine ();
              // Lecture du contenu du message
              String  content = "";
              String  line;
              while ((line = mailReader.readLine ()) != null)
                content += line + "\n";       
              mailReader.close ();
     
              // Création d'un ensemble de propriétés
              // et ouverture d'une session
              Properties props = new Properties();
              props.put ("mail.smtp.host", smtphost);
              Session session = Session.getDefaultInstance (props, null);
     
              String to;
              // Parcours de la liste de tous les destinataires 
              while ((to = destReader.readLine ()) != null)
                // Si le premier caractère est #, c'est une remarque
                if  (   to.length () > 0
                     && to.charAt (0) != '#')
                  try 
                  {
                    // Création d'un message
                    Message message = new MimeMessage (session);
     
                    // Modification de l'expéditeur
                    message.setFrom (new InternetAddress (from));
     
                    // Modification du destinataire
                    InternetAddress [] address =
                      {new InternetAddress (to)};        
                    message.setRecipients (Message.RecipientType.TO, address);
     
                    // Modification du sujet
                    message.setSubject (subject);
     
                    // Modification du contenu en texte brut
                    message.setContent (content, "text/plain");
     
                    // Envoi du message
                    Transport.send (message);          
                    System.out.println ("Message envoye a " + to);
                  } 
                  catch (MessagingException mex) 
                  {
                    mex.printStackTrace ();
                  }
            }
            catch (IOException ex)
            {
              System.out.println ("Probleme d'acces a " + mailFile + " ou " + destFile);
            }
     
     
          }
    Merci pour votre aide.

  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
    Concrètement, tu coince sur quoi? J'ai du mal à voir où est ton problème.

  3. #3
    Membre confirmé
    Homme Profil pro
    Analyste Concepteur[Secteur Banque/assurance]/ Ingénieur d'état en informatique
    Inscrit en
    Août 2007
    Messages
    89
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Maroc

    Informations professionnelles :
    Activité : Analyste Concepteur[Secteur Banque/assurance]/ Ingénieur d'état en informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2007
    Messages : 89
    Par défaut
    Bonjour,
    Merci pour votre réponse,
    j'ai un soucis dans l'envoi de mails :

    javax.mail.MessagingException: Could not connect to SMTP host: smtp.gmail.com, port: 25;
    nested exception is:
    java.net.ConnectException: Connection refused: connect
    at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:1934)
    at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:638)
    at javax.mail.Service.connect(Service.java:295)
    at javax.mail.Service.connect(Service.java:176)
    at javax.mail.Service.connect(Service.java:125)
    at javax.mail.Transport.send0(Transport.java:194)
    at javax.mail.Transport.send(Transport.java:124)


    Merci

  4. #4
    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
    regarde la doc de gmail pour savoir comment configurer ton client. gmail n'écoute pas sur le port 25 et requiert de l'authentification.

  5. #5
    Membre confirmé
    Homme Profil pro
    Analyste Concepteur[Secteur Banque/assurance]/ Ingénieur d'état en informatique
    Inscrit en
    Août 2007
    Messages
    89
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Maroc

    Informations professionnelles :
    Activité : Analyste Concepteur[Secteur Banque/assurance]/ Ingénieur d'état en informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2007
    Messages : 89
    Par défaut
    Oui effectivement ,j'ai ajouté la partie suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Properties props = new Properties();
     props.put("mail.smtp.auth", "true");
     props.put ("mail.smtp.ssl.trust", smtphost);
     props.put("mail.smtp.port", "587");
    //pour une connection SSL à vérifier
     props.put("mail.smtp.socketFactory.class","javax.net.ssl.SSLSocketFactory");
     props.put("mail.smtp.socketFactory.port", "587");
     
     Session session = Session.getDefaultInstance(props,
       new javax.mail.Authenticator() {
           protected PasswordAuthentication getPasswordAuthentication() {
               return new PasswordAuthentication("login","pass");
           }
       });
    l'erreur retournée est:

    javax.mail.MessagingException: Could not connect to SMTP host: localhost, port: 587;
    PI: j'ai un kaspersky installé sur ma machine ,est ce que ça pourra être la source du problème ?

    Mercii

  6. #6
    Modérateur
    Avatar de wax78
    Homme Profil pro
    R&D - Palefrenier programmeur
    Inscrit en
    Août 2006
    Messages
    4 096
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : R&D - Palefrenier programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 4 096
    Par défaut
    Tu as surement oublier de mettre le host. Car ton message indique que tu essayes de te connecter sur ta propre machine (localhost).
    (Les "ça ne marche pas", même écrits sans faute(s), vous porteront discrédit ad vitam æternam et malheur pendant 7 ans)

    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

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

Discussions similaires

  1. [Batch] extraction chaines depuis fichier
    Par Alderick dans le forum Scripts/Batch
    Réponses: 5
    Dernier message: 01/07/2015, 12h41
  2. Réponses: 0
    Dernier message: 05/09/2014, 22h30
  3. Script Shell et update BD depuis fichier txt
    Par pcsystemd dans le forum Shell et commandes GNU
    Réponses: 1
    Dernier message: 10/07/2008, 22h22
  4. [VBA Excel] Extraction de données fichier txt vers Excel et mise en forme
    Par newcodeur dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 23/05/2008, 11h45
  5. Extraction d'un fichier .txt vers une liste + random
    Par fontelouis dans le forum Pascal
    Réponses: 5
    Dernier message: 23/04/2008, 14h37

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