解析模板 [注册] 时出错,模板可能不存在或可能无法被任何已配置的模板解析器访问
Error resolving template [registration], template might not exist or might not be accessible by any of the configured Template Resolvers
我正在学习 Spring Boot、Thymeleaf 和 Spring Data JPA。我为自己创建了一个示例项目,我可以在其中学习所有这些东西。我在这里不问很多问题,因为通常这是一些愚蠢的错误,我对此很讨厌。但是,我被这个错误困住了,我别无选择。
这是我的项目结构:
project structure
这是配置 class(为简单起见,我排除了导入):
package com.edemko.warehousemanager;
public class WarehouseManagerConfig {
@Autowired
private ApplicationContext applicationContext;
@Bean
public ViewResolver thymeleafResolver() {
ThymeleafViewResolver viewResolver = new ThymeleafViewResolver();
viewResolver.setTemplateEngine(templateEngine());
viewResolver.setOrder(0);
return viewResolver;
}
@Bean
public SpringResourceTemplateResolver templateResolver() {
SpringResourceTemplateResolver templateResolver = new SpringResourceTemplateResolver();
templateResolver.setApplicationContext(applicationContext);
templateResolver.setPrefix("/WEB-INF/views/");
templateResolver.setSuffix(".html");
return templateResolver;
}
@Bean
public SpringTemplateEngine templateEngine(){
SpringTemplateEngine templateEngine = new SpringTemplateEngine();
templateEngine.setTemplateResolver(templateResolver());
templateEngine.setEnableSpringELCompiler(true);
return templateEngine;
}
}
这是我的控制器:
@Controller
public class RegistrationController {
@GetMapping("registration")
public String getRegistration(@ModelAttribute ("registration") Registration registration) {
return "registration";
}
}
可以看到整个应用程序here。我还收到警告:找不到模板位置:classpath:/templates/(请添加一些模板或检查您的 Thymeleaf 配置)。但它就在那里,正如您在项目结构图中看到的那样。
index.html 加载正确,没问题。当我点击 link 进行注册时,白色标签错误页面。感谢任何提示,谢谢。
在我将 registration.html 移动到模板文件夹后,“找不到 /templates/ 文件夹”和内部服务器错误都消失了并且工作正常,即使你没有自定义文件位置
我正在学习 Spring Boot、Thymeleaf 和 Spring Data JPA。我为自己创建了一个示例项目,我可以在其中学习所有这些东西。我在这里不问很多问题,因为通常这是一些愚蠢的错误,我对此很讨厌。但是,我被这个错误困住了,我别无选择。
这是我的项目结构: project structure
这是配置 class(为简单起见,我排除了导入):
package com.edemko.warehousemanager;
public class WarehouseManagerConfig {
@Autowired
private ApplicationContext applicationContext;
@Bean
public ViewResolver thymeleafResolver() {
ThymeleafViewResolver viewResolver = new ThymeleafViewResolver();
viewResolver.setTemplateEngine(templateEngine());
viewResolver.setOrder(0);
return viewResolver;
}
@Bean
public SpringResourceTemplateResolver templateResolver() {
SpringResourceTemplateResolver templateResolver = new SpringResourceTemplateResolver();
templateResolver.setApplicationContext(applicationContext);
templateResolver.setPrefix("/WEB-INF/views/");
templateResolver.setSuffix(".html");
return templateResolver;
}
@Bean
public SpringTemplateEngine templateEngine(){
SpringTemplateEngine templateEngine = new SpringTemplateEngine();
templateEngine.setTemplateResolver(templateResolver());
templateEngine.setEnableSpringELCompiler(true);
return templateEngine;
}
}
这是我的控制器:
@Controller
public class RegistrationController {
@GetMapping("registration")
public String getRegistration(@ModelAttribute ("registration") Registration registration) {
return "registration";
}
}
可以看到整个应用程序here。我还收到警告:找不到模板位置:classpath:/templates/(请添加一些模板或检查您的 Thymeleaf 配置)。但它就在那里,正如您在项目结构图中看到的那样。
index.html 加载正确,没问题。当我点击 link 进行注册时,白色标签错误页面。感谢任何提示,谢谢。
在我将 registration.html 移动到模板文件夹后,“找不到 /templates/ 文件夹”和内部服务器错误都消失了并且工作正常,即使你没有自定义文件位置