简体   繁体   中英

Images are attached in mail with thymeleaf

I'm sending a mail with template using thymeleaf, but the images are being attached, it cannot happen. Here is my code:

HTML:

<!-- I need put the image backgroud via css!-->
<body th:style="'background-image: url('+ |cid:${background}| +')'">
    <!--my image-->
    <img src="../../../static/images/email/topo_email.png" th:src="|cid:${logo}|"/>
</body>

JAVA:

//the main code of the method is here:

String emailFormatado = contatoEmail.getDescricao().replace(System.lineSeparator(), "<br>");
contatoEmail.setDescricao(emailFormatado);

Context context = new Context(new Locale("pt", "BR"));
context.setVariable("contatoEmail", contatoEmail);
context.setVariable("logo", "logo");
context.setVariable("background", "background");

try {
    String corpoEmail = thymeleaf.process("admin/mail/EmailResposta", context);
    MimeMessage mimeMessage = mailSender.createMimeMessage();
    MimeMessageHelper helper = new MimeMessageHelper(mimeMessage, true, "UTF-8");
    helper.setFrom(contatoEmail.getUsuario().getEmail());
    helper.setTo(email);
    helper.setSubject(String.format("Mensagem de respota"));
    helper.setText(corpoEmail, true);

    helper.addInline("background", new ClassPathResource("static/images/email/background_email.png"));
    helper.addInline("logo", new ClassPathResource("static/images/email/topo_email.png"));

    mailSender.send(mimeMessage);
} catch (MessagingException e) {
    logger.error("Erro enviando e-mail", e);
}

Everything is working corretly, but the images are attached. I hope you can help me.

The solution:

In my java code, where I put the variable of the image, was missing the type of image:

helper.addInline("logo", new ClassPathResource("static/images/email/topo_email.png"), "image/png");

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM