Вы должны использовать эту опцию на канальном адаптере:
simple-content="true"
См. Его описание:
Когда установлено значение «истина», сообщения, созданные источником, будут отображаться «MimeMessage.getContent ()», который обычно является просто телом для простого текстового электронного письма. При значении false (по умолчанию) содержимое отображается методом getContent () для фактического сообщения, возвращаемого базовой реализацией javamail. Например, сообщение IMAP отображается с некоторыми заголовками сообщений. Этот атрибут предоставлен для того, чтобы пользователи могли включить предыдущее поведение, которое только что отображало тело.
Но все же это сомнительно, так как я вижу, что в случае сообщения GMail это никогда не бывает простым. Контент MimeMultipart
, и нам нужно прочитать его части, чтобы получить доступ к реальному телу.
Итак, вот как вы должны изменить свой код:
log.info("content" + ((MimeMultipart) ((MimeMessage) message.getPayload()).getContent()).getBodyPart(0).getContent());