我正在使用Thymeleaf SpringTemplateEngine在我的Spring应用程序上创建HTML电子邮件.当我使用纯Spring MVC时,一切都很完美.现在使用Spring Boot,类无法找到我的.html模板.我认为问题在于ServletContext没有返回正确的路径,但我无法弄清楚如何解决它.那么我应该使用另一个Context来处理模板吗?哪一个?
这是我的MailService用于纯Spring MVC.
@Service
public class MailService {
private JavaMailSenderImpl mailSender;
private SpringTemplateEngine templateEngine;
public MailService() {
mailSender = new JavaMailSenderImpl();
//mailSender config
templateEngine = new SpringTemplateEngine();
Set<ITemplateResolver> templatesResolvers = new HashSet<ITemplateResolver>();
ClassLoaderTemplateResolver emailTemplateResolver = new ClassLoaderTemplateResolver();
emailTemplateResolver.setPrefix("mail/");
emailTemplateResolver.setTemplateMode("HTML5");
emailTemplateResolver.setCharacterEncoding("UTF-8");
emailTemplateResolver.setOrder(1);
templatesResolvers.add(emailTemplateResolver);
ServletContextTemplateResolver webTemplateResolver = new ServletContextTemplateResolver();
webTemplateResolver.setPrefix("/mail/");
webTemplateResolver.setTemplateMode("HTML5");
webTemplateResolver.setCharacterEncoding("UTF-8");
webTemplateResolver.setOrder(2);
templatesResolvers.add(webTemplateResolver);
templateEngine.setTemplateResolvers(templatesResolvers);
}
public void sendReport(String nome, String email, String obra,
long medicao, HttpServletRequest request,
HttpServletResponse response, ServletContext context, Locale locale)
throws MessagingException {
String subject …Run Code Online (Sandbox Code Playgroud)