2017-10-17 15 views
0

J'envoie un mail avec un modèle en utilisant thymeleaf, mais les images sont attachées, cela ne peut pas arriver. Voici mon code:Les images sont attachées dans le courrier avec thymeleaf

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); 
} 

Tout fonctionne corretly, mais les images sont jointes. J'espère que vous pouvez m'aider.

Répondre

0

La solution:

Dans mon code java, où je mets la variable de l'image, il manquait le type d'image:

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