【发布时间】:2017-05-10 10:26:23
【问题描述】:
我有一个现有的 Spring Boot 应用程序,它使用 JSP 获取视图。我想逐步将视图技术转移到 Thymeleaf。
JSP 视图解析器在 application.properties 中设置:
spring.mvc.view.prefix=/WEB-INF/views/
spring.mvc.view.suffix=.jsp
JSP 位于:
src/main/resources/META-INF/resources/WEB-INF/views/
是否可以为 Thymeleaf 添加第二个视图解析器,用于不作为 JSP 存在的视图?这样应用程序会在请求视图时尝试两个视图解析器。
编辑
我也尝试了以下配置,但没有成功:
@Bean
public InternalResourceViewResolver jspViewResolver() {
final InternalResourceViewResolver vr = new InternalResourceViewResolver();
vr.setPrefix("/META-INF/resources/WEB-INF/views/");
vr.setSuffix(".jsp");
vr.setViewClass(JstlView.class);
vr.setOrder(1);
return vr;
}
@Bean
public TemplateResolver templateResolver() {
final ServletContextTemplateResolver tr = new ServletContextTemplateResolver();
tr.setPrefix("templates/th/");
tr.setSuffix(".html");
tr.setTemplateMode("HTML5");
return tr;
}
@Bean
public SpringTemplateEngine templateEngine() {
final SpringTemplateEngine te = new SpringTemplateEngine();
// te.addTemplateResolver(jspViewResolver());
te.setTemplateResolver(templateResolver());
te.setMessageSource(databaseMessageSource);
return te;
}
@Bean
public ViewResolver viewResolver() {
final ThymeleafViewResolver vr = new ThymeleafViewResolver();
vr.setTemplateEngine(templateEngine());
vr.setOrder(2);
return vr;
}
【问题讨论】:
标签: java spring-boot thymeleaf