#java #spring-boot #thymeleaf
#java #весенняя загрузка #thymeleaf
Вопрос:
Я должен отправить электронное письмо с шаблоном thymeleaf внутри, но я получаю четкий HTML-код без необходимого параметра (ссылка). В чем моя ошибка?
Метод:
private void sendLetter(User user, String subject, String link, String templatePath, Locale locale) {
Context ctx = new Context(locale);
ctx.setVariables(Collections.singletonMap("link", link));
String htmlContent = templateEngine.process(templatePath, ctx);
MimeMessage mimeMessage = javaMailSender.createMimeMessage();
try {
MimeMessageHelper message = new MimeMessageHelper(mimeMessage, true, "UTF-8");
message.setTo(user.getEmail());
message.setFrom(emailProperties.getFrom());
message.setSubject(subject);
message.setText(htmlContent, true);
}
catch (MessagingException e) {
e.printStackTrace();
}
javaMailSender.send(mimeMessage);
}
Themeleaf:
<a class="main_button" href="${link}">
Комментарии:
1. Не могли бы вы уточнить свой вопрос — как вызывается частный метод, каковы параметры, что находится в ${link} и что вы ожидаете получить
2. @GabiM Я хочу получить значение входной ссылки в href, вместо ${link}
3. Получаете ли вы какое-либо исключение?
4. @RajaAnbazhagan нет, просто html
Ответ №1:
Вам нужно использовать th:href
вместо href
.
Измените свой код с
<a class="main_button" href="${link}">
Для
<a class="main_button" th:href="${link}">