У меня есть приложение Spring MVC с разрешением Thymeleaf view. Вот мой конфигурационный класс:Решения Thymeleaf и JSP в одном приложении Spring MVC
public class WebConfig extends WebMvcConfigurerAdapter {
@Bean
public SpringResourceTemplateResolver springResourceTemplateResolver() {
return new SpringResourceTemplateResolver();
}
@Bean
public ViewResolver viewResolver() {
ThymeleafViewResolver resolver = new ThymeleafViewResolver();
resolver.setTemplateEngine(templateEngine());
resolver.setCharacterEncoding("UTF-8");
return resolver;
}
@Bean
public TemplateEngine templateEngine() {
SpringTemplateEngine engine = new SpringTemplateEngine();
engine.setEnableSpringELCompiler(true);
engine.setTemplateResolver(templateResolver());
return engine;
}
private ITemplateResolver templateResolver() {
springResourceTemplateResolver().setPrefix("/WEB-INF/templates/");
springResourceTemplateResolver().setTemplateMode(TemplateMode.HTML);
return springResourceTemplateResolver();
}
}
Теперь мне нужно добавить jsp resolver в то же приложение. Я добавляю InternalResourceViewResolver боб, но он не работает, как ожидалось:
@Bean
public InternalResourceViewResolver jspViewResolver() {
InternalResourceViewResolver resolver = new InternalResourceViewResolver();
resolver.setPrefix("/WEB-INF/views/");
resolver.setSuffix(".jsp");
return resolver;
}
Вместо того, чтобы test_jsp страницы, когда я иду/тест/JSP я получаю сообщение об ошибке:
@RequestMapping(value = "/test/leaf", method = RequestMethod.GET)
public String mainPage() {
return "test_html.html";
}
@RequestMapping(value = "/test/jsp", method = RequestMethod.GET)
public String mainPage2() {
return "test_jsp";
}
Request processing failed; nested exception is org.thymeleaf.exceptions.TemplateInputException: An error happened during template parsing (template: "ServletContext resource [/WEB-INF/templates/test_jsp]")
Кто-нибудь знает, как добавить jsp view resolver, когда ThymeLeaf уже на месте? Мне нужна Весна, чтобы сначала искать Тимелеафа, а когда страница не найдена, он ищет jsp. Спасибо