小编rco*_*eia的帖子

如何在使用Spring Boot时使用SpringTemplateEngine

我正在使用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)

java jakarta-mail thymeleaf spring-boot

11
推荐指数
1
解决办法
2万
查看次数

标签 统计

jakarta-mail ×1

java ×1

spring-boot ×1

thymeleaf ×1