Содержимое содержит символы /n или /t. Но это не влияет на шаблон. Письма принимаются так, будто этих символов вообще не существует.
Как применить эти символы к шаблону?
Мой шаблон: (
Код: Выделить всё
.ftlh
Код: Выделить всё
Announcent
Dear [b]${name}[/b],
[b]${title}[/b]
[b]${content}[/b]
Код: Выделить всё
MailSender
Код: Выделить всё
@Async
@Override
public void sendMail(EmailData mail) throws MessagingException, TemplateException, IOException {
var to = mail.getTo();
var template = mail.getTemplate();
var model = getModelWithFooterParam(mail.getModel());
var mimeMessage = javaMailSender.createMimeMessage();
var mailSubject = messageService.getMessage(template.getMailSubjectCode(), mail.getLocale());
// init helper
var helper = new MimeMessageHelper(mimeMessage, MimeMessageHelper.MULTIPART_MODE_MIXED_RELATED, "UTF-8");
helper.setSubject(mailSubject);
helper.setTo(to);
helper.setFrom(from, displayName);
String emailContent = getEmailContent(template.toString(), model);
helper.setText(emailContent, true);
// send mime message
javaMailSender.send(mimeMessage);
}
private String getEmailContent(String templateFile, Map model) throws IOException,
TemplateException {
StringWriter stringWriter = new StringWriter();
var template = configuration.getTemplate(templateFile);
template.process(model, stringWriter);
return stringWriter.getBuffer().toString();
}
private Map getModelWithFooterParam(Map model){
var result = new HashMap();
if (model != null) {
result.putAll(model);
}
result.put(MailModelKeys.FOOTER_PROPS, mailFooterProps);
result.put(MailModelKeys.FRONTEND_URL, frontendBaseUrl);
return result;
}
Вкратце, вот что я хочу видеть в своем почтовом ящике:

Но вместо этого , я вижу это:

Подробнее здесь: https://stackoverflow.com/questions/788 ... il-content