Bonjour,
Mon problème est le suivant :
J'utilise l'API de Birt "Report Engine API" pour générer des documents divers, ainsi que des emails. En effet, j'utilise cette librairie pour gérer la partie design des emails.
Il y a une phase de génération du document dans un fichier HTML, puis une récupération de ce document et enfin un envoi via Javamail - Commons Email.
Je suis récemment passé de la version 2.1 à la version 2.5 pour l'API de Birt. Et un changement de comportement me pose problème. Il s'avère que l'encodage final de mes mails a changé. J'ai alors des problèmes de compatibilité sur Outlook.
L'encodage du contenu html dans le mail est passé de :
àContent-Type: text/html; charset=us-ascii
Content-Transfer-Encoding: 7bit
On remarquera aussi que le contenu html que Birt génère change :Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Auparavant, les caractères spéciaux (entre autres les accents) était transformé en entités html. Dorénavant, la transformation n'a plus lieu.
Voici un extrait du fichier généré par Birt qui passe de :
à<td>
<div id="AUTOGENBOOKMARK_11" style=" direction: ltr;">N’hésitez pas à nous contacter, nous sommes à votre disposition.</div>
</td>
<td>
<div id="AUTOGENBOOKMARK_11">N’hésitez pas à nous contacter, nous sommes à votre disposition.</div>
</td>
Je pense que JavaMail choisit l'encodage du mail en fonction du contenu à envoyé, hors ce contenu a changé.
Finalement, j'aimerais donc savoir s'il était possible de forcer Birt à transformer les caractères spéciaux en entités Html.
Cordialement,
Partager