• Jobs
  • About Us
  • Jobs
    • Home
    • Jobs
    • Courses and challenges
  • Businesses
    • Home
    • Post vacancy
    • Our process
    • Pricing
    • Assessments
    • Hire tech talent
    • Blog
    • Sales
    • Salary Calculator

0

967
Views
cómo usar thymeleaf y jsp en el mismo proyecto de arranque de primavera

Puedo acceder a los archivos en la carpeta de plantillas, pero no puedo acceder a los archivos jsp. Si elimino la dependencia de thymeleaf, puedo acceder a los archivos jsp, pero quiero acceder tanto a los archivos html de thymeleaf como a los archivos jsp usando Spring Boot.

A continuación se muestra mi configuración en application.properties y pom.xml

Configuración de resolución de Spring View

 spring.mvc.view.prefix=/WEB-INF/views/ spring.mvc.view.suffix=.jsp
 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> </dependency> <dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-jasper</artifactId> <scope>provided</scope> </dependency>

A continuación se muestra el ERROR, cuando intento acceder al archivo jsp

 org.thymeleaf.exceptions.TemplateInputException: Error resolving template "todo-form", template might not exist or might not be accessible by any of the configured Template Resolvers spring

Estructura de la carpeta Mis vistas

ingrese la descripción de la imagen aquí

about 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Coloque el código a continuación en la clase @configuration. Ahora puedo acceder a los archivos jsp y html.

 @Autowired WebApplicationContext webApplicationContext; @Bean public SpringResourceTemplateResolver thymeleafTemplateResolver(){ SpringResourceTemplateResolver templateResolver = new SpringResourceTemplateResolver(); templateResolver.setApplicationContext(webApplicationContext); templateResolver.setOrder(9); templateResolver.setPrefix("/WEB-INF/views/"); templateResolver.setSuffix(""); return templateResolver; } @Bean public SpringTemplateEngine templateEngine() { SpringTemplateEngine springTemplateEngine= new SpringTemplateEngine(); springTemplateEngine.setTemplateResolver(thymeleafTemplateResolver()); springTemplateEngine.setEnableSpringELCompiler(true); return springTemplateEngine; } @Bean public ThymeleafViewResolver thymeleafViewResolver(){ final ThymeleafViewResolver viewResolver = new ThymeleafViewResolver(); viewResolver.setViewNames(new String[] {"*.html"}); viewResolver.setExcludedViewNames(new String[] {"*.jsp"}); viewResolver.setTemplateEngine(templateEngine()); viewResolver.setCharacterEncoding("UTF-8"); return viewResolver; } @Bean public InternalResourceViewResolver jspViewResolver(){ final InternalResourceViewResolver viewResolver = new InternalResourceViewResolver(); viewResolver.setOrder(10); viewResolver.setViewClass(JstlView.class); viewResolver.setPrefix("/WEB-INF/views/"); viewResolver.setSuffix(""); viewResolver.setViewNames("*.jsp"); return viewResolver; }

ingrese la descripción de la imagen aquí

ingrese la descripción de la imagen aquí

about 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Our process Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!