В дополнение к удалению html.setHeader("Content-Type", html.getContentType())
звоните как подсказывают уже, я бы заменил строку:
MimeMultipart content = new MimeMultipart();
& hellip; с:
MimeMultipart content = new MimeMultiPart("alternative");
& hellip; и удаление строки:
message.setHeader("Content-Type" , content.getContentType() );
Конструктор MimeMultiPart по умолчанию может вызывать проблемы с типом содержимого «multipart / mixed».
При использовании составной / альтернативной альтернативы упорядочиваются по тому, насколько они верны оригиналу, с наилучшей передачей последней. Однако клиенты обычно дают пользователям возможность отображать простой текст, даже если присутствует HTML. Вы уверены, что эта опция не включена в Outlook? Как другие пользовательские агенты, такие как Thunderbird или GMail, обрабатывают ваши сообщения?
Кроме того, убедитесь, что HTML-код правильно сформирован. Я бы проверил содержимое HTML с помощью службы проверки W3 , и, возможно, сохранил бы его в файл и посмотрел бы его в разных версиях IE. Возможно, есть недостаток, заставляющий Outlook переключаться на обычный текст.