В настоящее время мы получаем электронное письмо, которое анализируется
MimeMessageParser mimeMessageParser = parse(message);
а затем вытащите вложения с помощью
if (mimeMessageParser.hasAttachments()) {
List<DataSource> attachments = mimeMessageParser.getAttachmentList();
for (DataSource dataSource : attachments) {
saveAttachment(dataSource, subjectLineProperties, documentToUpload, firstHeaders);
}
}
Проблема в том, что getAttachmentList также возвращает встроенные изображения, такие как логотип компании в строке подписи, и мы не хотим извлекать встроенные изображения в качестве вложений. Нам просто нужны фактические вложения электронной почты. ATTACHMENT против INLINE, но у нас также нет доступа к размещению java.mail через версию Apache Commons Email 1.4, и мы не можем найти решение. Я проверил их документацию https://commons.apache.org/proper/commons-email/javadocs/api-1.4/index.html
Неудачно. Кажется, что DataSource вложений позволяет мне получать контент, тип и имя контента, но не в том случае, если это встроенное вложение/изображение или обычное вложение, такое как Mime Parts.