Ars*_*Ars 5 spring spring-mvc thymeleaf spring-boot
我正在尝试配置我的项目。我有两个 tempalteResolver 变体。如果我用这个:
@Bean
public SpringResourceTemplateResolver templateResolver() {
SpringResourceTemplateResolver templateResolver = new SpringResourceTemplateResolver();
templateResolver.setApplicationContext(applicationContext);
templateResolver.setPrefix("/WEB-INF/templates/");
templateResolver.setSuffix(".html");
templateResolver.setTemplateMode(TemplateMode.HTML);
templateResolver.setCacheable(true);
return templateResolver;
}
Run Code Online (Sandbox Code Playgroud)
我收到一个错误,即使我添加 xmlns:th="http://www.thymeleaf.org",我的模板也无法解析 thymeleaf 语法
当我使用以下代码时:
@Bean
public ClassLoaderTemplateResolver templateResolver() {
ClassLoaderTemplateResolver templateResolver = new ClassLoaderTemplateResolver();
templateResolver.setPrefix("/WEB-INF/templates/");
templateResolver.setSuffix(".html");
templateResolver.setTemplateMode(TemplateMode.HTML);
templateResolver.setCacheable(false);
templateResolver.setCharacterEncoding("UTF-8");
return templateResolver;
}
Run Code Online (Sandbox Code Playgroud)
我收到错误消息,该路径 (/WEB-INF/templates) 下没有模板。
我的模板的完整路径是 src\main\webapp\WEB-INF\templates\
最好使用的模板解析器是什么?为什么?
谢谢!
对于 Web 项目(使用 SpringMvc 控制器),您应该使用 SpringResourceTemplateResolver,对于命令行项目,或者当您需要为非 Web 应用程序生成 html(例如发送 html 电子邮件或类似内容)时,应该使用 ClassLoaderTemplateResolver。
发生第一个错误是因为 spring security 不知何故没有连接到项目和我的
Authentication auth = SecurityContextHolder.getContext().getAuthentication();
modelAndView.addObject("auth", auth);
Run Code Online (Sandbox Code Playgroud)
发送空值。第二个错误我不知道为什么会发生。
| 归档时间: |
|
| 查看次数: |
2528 次 |
| 最近记录: |