У меня есть следующая часть в моем HTML
Код: Выделить всё
Код: Выделить всё
Context context = new Context();
context.setLocale(Locale.GERMAN);
String emailBody = templateEngine.process( "WELCOME", context);
Код: Выделить всё
@Bean
public TemplateEngine mailTemplateEngine() {
TemplateEngine templateEngine = new TemplateEngine();
templateEngine.addTemplateResolver(mailTemplateResolver());
templateEngine.addDialect(new LayoutDialect());
templateEngine.setMessageResolver(messageResolver());
return templateEngine;
}
@Bean
public ITemplateResolver mailTemplateResolver() {
ClassLoaderTemplateResolver templateResolver = new ClassLoaderTemplateResolver();
templateResolver.setPrefix("/templates/email/common/");
templateResolver.setSuffix(".html");
templateResolver.setTemplateMode(TemplateMode.HTML);
templateResolver.setCharacterEncoding(UTF_8.name());
templateResolver.setCheckExistence(true);
templateResolver.setCacheable(false);
return templateResolver;
}
@Bean
public IMessageResolver messageResolver() {
return new StandardMessageResolver();
}
Код: Выделить всё
nz.net.ultraq.thymeleaf
thymeleaf-layout-dialect
2.4.1
org.thymeleaf
thymeleaf
3.0.12.RELEASE
И если вы проверите #{TEST} в моем HTML с помощью Ctrl + щелчок левой кнопкой мыши, вы увидите что он видит файлы свойств, поэтому IDEA может решить эту проблему.
Когда я запускаю свое приложение и пытаюсь отправить электронное письмо, я получаю следующий результат
??TEST_de??
И я получил аналогичный результат для всех остальных языков.
< п>Как это исправить? Мне нужно, чтобы TemplateEngine мог получать правильное значение свойства в зависимости от локали.
Подробнее здесь: https://stackoverflow.com/questions/686 ... e-property
Мобильная версия