Почта JAVA - проблема с внешним видом - PullRequest
0 голосов
/ 28 февраля 2019

Одна и та же почта с разными изображениями отправляется (MAIL.TO) другому пользователю, в то время как CC и BCC остаются теми же Gmail, а другие платформы показывают правильные изображения (тело письма), тогда как при просмотре в перспективе изображение его пользователя изменяется(В случае нескольких писем - CC и BCC)

    BodyPart messageBodyPart = new MimeBodyPart();
    MimeMultipart multipart = new MimeMultipart(/* "related" */);

    messageBodyPart.setContent(mailTemplateValue.getTemplate(), "text/html");
    multipart.addBodyPart(messageBodyPart);

    // first image
    messageBodyPart = new MimeBodyPart();
    DataSource employeeImage = new ByteArrayDataSource(dbResult.getImageData(), dbResult.getImageType());
    messageBodyPart.setDataHandler(new DataHandler(employeeImage));
    messageBodyPart.setHeader("Content-ID", "<employeeimage>");
    multipart.addBodyPart(messageBodyPart);

    // second image
    messageBodyPart = new MimeBodyPart();
    DataSource birthdayImage = new ByteArrayDataSource(convertImageToByteArray(birthdayImagePath),
            birthdayTemplateImageType);
    messageBodyPart.setDataHandler(new DataHandler(image2));
    messageBodyPart.setHeader("Content-ID", "<image2>");
    multipart.addBodyPart(messageBodyPart);

    // third image
    messageBodyPart = new MimeBodyPart();
    DataSource wishTextmage = new ByteArrayDataSource(convertImageToByteArray(birthdayWishTextImagePath),
            birthdayTemplateImageType);
    messageBodyPart.setDataHandler(new DataHandler(thirdimage));
    messageBodyPart.setHeader("Content-ID", "<thirdimage>");
    multipart.addBodyPart(messageBodyPart);

    // fourth image
    messageBodyPart = new MimeBodyPart();
    DataSource footerImage = new ByteArrayDataSource(convertImageToByteArray(birthdayFooterImagePath),
            birthdayTemplateImageType);
    messageBodyPart.setDataHandler(new DataHandler(footerImage));
    messageBodyPart.setHeader("Content-ID", "<footerimage>");
    multipart.addBodyPart(messageBodyPart);

    // put everything together
    message.setContent(multipart);
}

Transport.send(message);
...