У нас есть следующая конфигурация thymeleaf:
@Bean
public TemplateEngine emailTemplateEngine() {
final SpringTemplateEngine templateEngine = new SpringTemplateEngine();
templateEngine.addTemplateResolver(htmlTemplateResolver());
templateEngine.addTemplateResolver(stringTemplateResolver());
return templateEngine;
}
private ITemplateResolver htmlTemplateResolver() {
final ClassLoaderTemplateResolver templateResolver = new ClassLoaderTemplateResolver();
templateResolver.setOrder(1);
templateResolver.setResolvablePatterns(Collections.singleton("templates/*"));
templateResolver.setSuffix(".html");
templateResolver.setTemplateMode(TemplateMode.HTML);
templateResolver.setCharacterEncoding(StandardCharsets.UTF_8.name());
templateResolver.setCacheable(false);
return templateResolver;
}
private ITemplateResolver stringTemplateResolver() {
final StringTemplateResolver templateResolver = new StringTemplateResolver();
templateResolver.setOrder(2);
templateResolver.setTemplateMode(TemplateMode.TEXT);
templateResolver.setCacheable(false);
return templateResolver;
}
То есть - два распознавателя, один для html, один для текста.
Мы используем html one для тела наших писемтекст один для субъекта.
Дано:
шаблон темы (простая строка), подобный этому: "[[${values.createdBy}]] created a widget"
a values.createdBy
значение Brock O'Samson
Мы видим результат: Brock O'Samson
Есть идеи, что настроить?«Шаблонный режим» казался очевидным решением, но он уже был установлен на TEXT.