【发布时间】:2017-03-23 13:12:51
【问题描述】:
我正在使用 Spring Boot 1.4.1 和 spring-boot-starter-thymeleaf 依赖项开发一些 Spring 应用程序。我希望在我的网络服务器上共享我的 Thymeleaf 模板(例如页眉和页脚),以便能够将它们包含在我的应用程序中。实现这一点的最简单方法是在我的每个应用程序中包含指向我的模板的服务器根相对链接。这样,我的应用程序将是可移植的,我可以让它在我的所有环境(开发、测试、生产)上无缝运行。
在我看来,这似乎没什么大不了的,因为 Thymeleaf 已经考虑了服务器相关的 URL
<th:block th:replace="@{~/my/share/header}" />
但是我无法让它工作。我总是收到类似的错误
解析模板“/my/share/header”时出错,模板可能不存在或可能无法被任何已配置的模板解析器访问
我可以确认我的模板可用,因为 http://localhost/my/share/header.html 响应正确(顺便说一句:我使用 Apache httpd 来托管我的应用程序,所以我使用的是相同的端口)。
我还尝试在 URL 末尾添加“.html”或实现 URLTemplateResolver(见下文),但不幸的是,似乎没有任何效果。
@Bean
public ITemplateResolver templateResolver() {
UrlTemplateResolver templateResolver = new UrlTemplateResolver();
templateResolver.setSuffix(".html");
return templateResolver;
}
有人知道如何使用服务器根相对 URL 嵌入模板吗?
【问题讨论】:
标签: spring spring-boot thymeleaf