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 :

Envoi de mail au format HTML avec des images


Sujet :

API standards et tierces Java

  1. #1
    Membre régulier
    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 : 37
    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
    Points : 96
    Points
    96
    Par défaut Envoi de mail au format HTML avec des images
    Bonjour tout le monde,

    j'ai un soucis concernant l'envoi de mail sous format HTML,j'ai commencé par essayer l'API :FileUtils pour lire le fichier html et le convertir en string,mais le problème est comment récupérer le contenu tel qu'il est et l'envoyer dans content en mail (en UTF8 pour éviter le problème des accents).

    voila ma fonction d'envoi de mail :
    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
    88
    89
     
         public static boolean envoiMails(String mails,String nom_prenom) {
            String from = "@mail1";
            StringWriter writer = new StringWriter();
            try {
     
            StringBuilder stringBuilder = new StringBuilder();
            //InputStreamReader inputStreamReader = new InputStreamReader(BatchEmailingRelances.class.getResourceAsStream("./relance.htm"));
            InputStreamReader inputStreamReader2 = new InputStreamReader(BatchEmailingRelances.class.getResourceAsStream("./mail1FR.txt"));
     
            BufferedReader  bufferedReader = new BufferedReader(new FileReader("./relance.htm"));
            BufferedReader   bufferedReader2 = new BufferedReader(inputStreamReader2);
            String subject = bufferedReader2.readLine();
            String str = "";
           // String content = "";
           //String content = Files.toString(new File("relance.htm", Charsets.UTF_8));
           File myFile = new File("C:\\Users\\belkaika\\Documents\\NetBeansProjects\\BatchEmailingRelances\\src\\batchemailingrelances\\relance.htm");
           File myfile = null;
           String content = FileUtils.readFileToString(myfile, "UTF-8");
     
           // IOUtils.copy(new FileInputStream(new File("./relance.htm")), writer);
            while ((str=bufferedReader.readLine()) != null) {
     
                stringBuilder.append(str);
                //stringBuilder.replace(exit, exit, str);
                content = stringBuilder.toString();
     
            }
             logger.log(Level.INFO, "affichage mail ..............", str);
     
     
                String host = "host";
                Properties props = new Properties();
                props.setProperty("mail.smtp.host", host);
     
                props.put("mail.smtp.auth", "true");
                props.put ("mail.smtp.ssl.trust", host);
                props.put("mail.smtp.starttls.enable", "true");
                props.put("mail.smtp.host", host);
                props.put("mail.smtp.port", "587");
     
                props.put("mail.smtp.socketFactory.port", "587");
     
                props.put("mail.smtp.socketFactory.fallback", "true");
                Session session = Session.getDefaultInstance(props, new javax.mail.Authenticator() {
                    protected PasswordAuthentication getPasswordAuthentication() {
                        return new PasswordAuthentication("login", "*****");
                    }
                });
                String to;
     
                try {
                    to = mails;
                    // 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);
                    message.setSubject(subject);
     
                    //message.setContent(writer.toString(), "text/html");
                    message.setContent(content.replace("{Nom_prenom}", nom_prenom), "text/plain;charset=utf-8");
                   //  message.setContent(content, "text/plain;charset=utf-8");
     
                     affiche("Contenu du message à envoyer:" + str+".......................ce message à été envoyé à"+to);
                    // Envoi du message
                    affiche("Essai d'envoi mail a :....." + to);
                    //envoi du mail
                    Transport.send(message);
                    logger.log(Level.INFO, " Message envoye a :", to);
     
                } catch (MessagingException mex) {
                    mex.getMessage();
                    mex.printStackTrace();
                    logger.log(Level.WARNING, " Problème envoi du MESSAGE de relance");
                    return false;
                }
            } catch (IOException ex) {
               // logger.log(Level.WARNING, "Probleme d'acces a:", mailFile + " ou " + destFile);
                ex.getMessage();
                return false;
           }
     
            return true;
     
        }
    Cette fonction prends en paramètre 2 attributs:
    - String mails :l'adresse mail du destinataire
    - String nom_prenom: nom & prenom du client récupéré de la BD pour qu'il soit affiché au début du mail (au niveau du mail en html : <p>Madame / Monsieur {Nom_prenom}</p>)

    le mail est sous le format 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
    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
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
            "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <!-- saved from url=(0014)about:internet -->
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <title>relance.png</title>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
        <style type="text/css">
            td img {
                display: block;
            }
     
            .parag p {
                margin-left: 25px;
                font-family: "Open Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
                font-size: 12px;
            }
        </style>
    </head>
    <body bgcolor="#ffffff">
    <table border="0" cellpadding="0" cellspacing="0" width="845" align="center">
        <tr>
            <td><img name="relance_r1_c1" src="images/relance_r1_c1.png" width="845" height="129" border="0"
                     id="relance_r1_c1" alt=""/></td>
        </tr>
        <tr>
            <td><img name="relance_r2_c1" src="images/relance_r2_c1.png" width="845" height="33" border="0"
                     id="relance_r2_c1" alt=""/></td>
        </tr>
        <tr>
            <td width="845" height="111" class="parag">
                <p>Madame / Monsieur {Nom_prenom}</p>
                <p>
                    Nous vous remercions d'avoir entamé votre ouverture de compte en ligne .
                </p>
                <p>Pour finaliser votre demande, nous vous invitons à vous connecter avec votre identifiant et votre mot de
                    passe en cliquant sur le lien ci-dessous</p>
            </td>
        </tr>
        <tr>
            <td><img name="relance_r4_c1" src="images/relance_r4_c1.png" width="845" height="18" border="0"
                     id="relance_r4_c1" alt=""/></td>
        </tr>
        <tr>
            <td>
                <table align="left" border="0" cellpadding="0" cellspacing="0" width="845">
                    <tr>
                        <td><img name="relance_r5_c1" src="images/relance_r5_c1.png" width="107" height="69" border="0"
                                 id="relance_r5_c1" alt=""/></td>
                        <td><img name="relance_r5_c2" src="images/relance_r5_c2.png" width="615" height="69" border="0"
                                 id="relance_r5_c2" alt=""/></td>
                        <td><img name="relance_r5_c3" src="images/relance_r5_c3.png" width="123" height="69" border="0"
                                 id="relance_r5_c3" alt=""/></td>
                    </tr>
                </table>
            </td>
        </tr>
        <tr>
            <td><img name="relance_r6_c1" src="images/relance_r6_c1.png" width="845" height="27" border="0"
                     id="relance_r6_c1" alt=""/></td>
        </tr>
        <tr>
            <td width="845" height="41" class="parag">
                <p>
                    Pour toutes vos question n’hésitez pas à contacter notre équipe Agence Directe au ..., 7j/7, de 08h à 22h ou par e-mail à l'adresse <a href="mailto:">url site</a>
                </p>
            </td>
        </tr>
        <tr>
            <td><img name="relance_r8_c1" src="images/relance_r8_c1.png" width="845" height="74" border="0"
                     id="relance_r8_c1" alt=""/></td>
        </tr>
        <tr>
            <td><img name="relance_r9_c1" src="images/relance_r9_c1.png" width="845" height="105" border="0"
                     id="relance_r9_c1" alt=""/></td>
        </tr>
    </table>
    </body>
    </html>
    Merci de m'aviser sur ce volet SVP.
    Bonne journée à tous les membres.

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

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    et il se passe quoi actuellement avec ce code?

  3. #3
    Membre régulier
    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 : 37
    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
    Points : 96
    Points
    96
    Par défaut
    Bonjour,

    Non c'est bon il y avait seulement quelques rectifs à faire,le code envoi bien les mails .

    Merci bcp @tchize_ pour votre réponse.

    Bonne journée.

  4. #4
    Membre régulier
    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 : 37
    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
    Points : 96
    Points
    96
    Par défaut
    Bonjour,

    Non c'est bon il y avait seulement quelques rectifs à faire,le code envoi bien les mails .

    Merci bcp @tchize_ pour votre réponse.

    Bonne journée.

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

Discussions similaires

  1. Envoi de mail au format HTML
    Par T_Joe dans le forum Shell et commandes GNU
    Réponses: 2
    Dernier message: 07/04/2008, 17h33
  2. Réponses: 1
    Dernier message: 09/05/2007, 21h36
  3. [Mail] Problème d'envoi de mail au format HTML
    Par Romalafrite dans le forum Langage
    Réponses: 2
    Dernier message: 27/02/2007, 11h42
  4. [PHPMailer] envoie de mail au format html via phpmailer()
    Par leclone dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 22/02/2007, 11h14
  5. Envoi de mail au format html
    Par Mephyston dans le forum C++Builder
    Réponses: 2
    Dernier message: 22/01/2004, 12h29

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