Шаблон отправки электронного письма в SpringBoot Java

У меня есть фрагмент кода, в котором я пытаюсь отправлять электронные письма с шаблоном тимелеафа, чтобы отображать данные и изображение (как логотип) внутри электронного письма.

Вот моя функция для отправки электронного письма:

    public void sendingemailtest() throws MessagingException, IOException{

    String recipientName = "Hero";
    final Context context = new Context();
    final MimeMessage mimeMessage = this.mailSenderTest.createMimeMessage();
    final MimeMessageHelper helper = new MimeMessageHelper(mimeMessage, true, "UTF-8"); 
    context.setVariable("name", recipientName);
    context.setVariable("image", "logo.jpg");
    helper.setFrom("from email test");
    helper.setSubject("testing sending email with image");
    helper.setTo("to email test");
    final String htmlContent = this.springTemplateEngine.process("registration-email", context);
    helper.setText(htmlContent, true);      
    helper.addInline("logo.jpg", new FileSystemResource("/logo.jpg"), "image/jpg");
    this.mailSenderTest.send(mimeMessage);

}

И в шаблоне тимелеафа я использую th:src = "|cid:${image}|" для ссылки на изображение и th:text = "${name}" для ссылки на имя

Все работает, и электронное письмо отправлено, но у меня есть одна проблема: полученное электронное письмо отображается как содержащее вложение, но я не хочу показывать изображение как вложение. Как это сделать, поскольку я вижу, что многие компании отправляют электронные письма, содержащие изображения, но не показывающие вложения на боковой стороне письма.

Пожалуйста помоги!

может быть, вы можете использовать содержимое почты в формате html, если я не ошибаюсь

Mohammed Housseyn Taleb 08.05.2018 00:17
stackoverflow.com/questions/1851728/…
Mohammed Housseyn Taleb 08.05.2018 00:18

спасибо @MohammedHousseynTaleb, но ваше предложение не работает, поскольку я не создаю свой html-шаблон внутри своей функции. У меня есть шаблон отдельно, и, как вы видите в моем коде, я использую преобразователь шаблонов для обработки шаблона и помещения в него данных и изображений. Я не буду использовать набор текста и создавать html-код внутри своей функции. (У меня есть дизайн и слишком много вещей в моем электронном HTML-документе)

msf6012 08.05.2018 00:37
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
1
4
897
0

Другие вопросы по теме