Subject: =?ANSI_X3.4-1968?Q? – Defekte Umlaute in Mails
Java, Linux/OpenSource Juni 19th, 2007Ein lustiges Phänomen: Ein Kunde hatte Probleme mit dem Versand von E-Mails aus einer Java Applikation heraus. Das äußerte sich dann so, dass per JavaMail versandte E-Mails keine richtigen Umlauten enthielten.
Zuerst war der Mailserver in Verdacht, der auch brav ein „Content-Transfer-Encoding: 7bit“ angab. Aber der Postfix Mailserver wurde bereits mit E-Mails gefüttert, die entsprechend „defekt“ waren, und als Subject tauchte „Subject: =?ANSI_X3.4-1968?Q“ auf.
Die Ursache: Auf dem verwendeten Linux Server war keine Locale gesetzt, so dass „C“ / ANSI als Standardlocale verwendet wurde. E-Mails die so versandt werden, haben keine richtigen Umlaute und JavaMail setzt das Subject auf „Subject: =?ANSI_X3.4-1968?Q“. Die Ursache dafür konnte ich bisher nicht finden – aber Abhilfe:
Einfach die Locale richtig setzen bevor Java bzw. der Applikationsserver gestartet wird (Tomcat, Jboss, Resin, …) oder in der Applikation folgendes Property setzen:
System.setProperty("mail.mime.charset","Cp1252");
Anschließend kommen auch Umlaute richtig rüber.
Neue Kommentare