У меня есть самописный почтовый клиент Java, который читает сообщения с почтового сервера.
У меня не было с этим проблем, но недавно я обнаружил исключение, когда этот клиент пытался прочитать одно сложное электронное письмо. Трассировка стека говорит, что кодировка 'quoted/printable' неизвестна, и, вероятно, этой информации достаточно, чтобы найти решение.
В любом случае, я дополню вопрос и выложу лог сюда:
java.io.IOException: Unknown encoding: quoted/printable
at javax.mail.internet.MimePartDataSource.getInputStream(MimePartDataSource.java:113)
at com.sun.mail.handlers.text_plain.getContent(text_plain.java:107)
at javax.activation.DataSourceDataContentHandler.getContent(DataHandler.java:790)
at javax.activation.DataHandler.getContent(DataHandler.java:537)
at javax.mail.internet.MimeBodyPart.getContent(MimeBodyPart.java:644)
Вот часть сообщения, содержащая эту информацию о кодировке
--=_374450e655545f2af979375837b3e516
Content-Transfer-Encoding: quoted/printable
Content-Type: text/plain; charset=utf-8
Остальная информация представляет собой текст в формате thml.
Итак, есть ли способ решить проблему без изменения поставщика/версии javax.mail? Теперь я использую
group: 'com.sun.mail', name: 'javax.mail', version: '1.5.1'
Или, может быть, я просто неправильно понял проблему, и я должен решить ее по-другому?