diff --git a/common/source/java/ch/systemsx/cisd/common/mail/MailClient.java b/common/source/java/ch/systemsx/cisd/common/mail/MailClient.java
index 8caa0cb2727a6a112b794827b8938b429f124b5f..5bae5c7793de2c67db34fec79ff98ab10ca1f0a7 100644
--- a/common/source/java/ch/systemsx/cisd/common/mail/MailClient.java
+++ b/common/source/java/ch/systemsx/cisd/common/mail/MailClient.java
@@ -20,6 +20,8 @@ import java.io.ByteArrayOutputStream;
 import java.io.File;
 import java.io.IOException;
 import java.util.Arrays;
+import java.util.Date;
+import java.util.Enumeration;
 import java.util.Properties;
 
 import javax.activation.DataHandler;
@@ -250,6 +252,7 @@ public final class MailClient extends Authenticator implements IMailClient
             {
                 messagePreparerOrNull.prepareMessage(msg);
             }
+            msg.setSentDate(new Date());
             send(msg);
         } catch (MessagingException ex)
         {
@@ -292,6 +295,7 @@ public final class MailClient extends Authenticator implements IMailClient
         }
     }
 
+    @SuppressWarnings("unchecked")
     private void writeMessageToFile(MimeMessage msg) throws MessagingException
     {
         File emailFolder = new File(smtpHost.substring(FILE_PREFIX.length()));
@@ -313,10 +317,11 @@ public final class MailClient extends Authenticator implements IMailClient
         }
         File file = FileUtilities.createNextNumberedFile(new File(emailFolder, "email"), null);
         StringBuilder builder = new StringBuilder();
-        builder.append("Subj: ").append(msg.getSubject()).append('\n');
-        builder.append("From: ").append(renderAddresses(msg.getFrom())).append('\n');
-        builder.append("To:   ").append(renderAddresses(msg.getAllRecipients())).append('\n');
-        builder.append("Reply-To: ").append(renderAddresses(msg.getReplyTo())).append('\n');
+        final Enumeration<String> headers = msg.getAllHeaderLines();
+        while (headers.hasMoreElements())
+        {
+            builder.append(headers.nextElement()).append('\n');
+        }
         builder.append("Content:\n");
         try
         {
@@ -339,23 +344,6 @@ public final class MailClient extends Authenticator implements IMailClient
         FileUtilities.writeToFile(file, builder.toString());
     }
 
-    private String renderAddresses(Address[] addresses)
-    {
-        StringBuilder builder = new StringBuilder();
-        if (addresses != null)
-        {
-            for (int i = 0; i < addresses.length; i++)
-            {
-                builder.append(addresses[i]);
-                if (i < addresses.length - 1)
-                {
-                    builder.append(", ");
-                }
-            }
-        }
-        return builder.toString();
-    }
-
     //
     // Authenticator
     //