我的 Spring 4/Thymeleaf 设置有一些严重问题。这是错误消息:
Error resolving template "public/bootstrap/js/bootstrap.min", template might not exist or might not be accessible by any of the configured Template Resolvers
出于某种原因,Spring 或 Thymeleaf 将 css 和 js 视为非静态的,并试图将它们视为请求来处理。我有 3 个模板解析器:
@Bean()
public TemplateResolver templateResolver() {
ServletContextTemplateResolver resolver = new ServletContextTemplateResolver();
resolver.setPrefix("/WEB-INF/templates/");
resolver.setSuffix(".html");
resolver.setTemplateMode("HTML5");
resolver.setCacheable(false);
resolver.setOrder(0);
return resolver;
}
@Bean()
public TemplateResolver publicTemplateResolver() {
ServletContextTemplateResolver resolver = new ServletContextTemplateResolver();
resolver.setPrefix("/WEB-INF/templates/default/");
resolver.setSuffix(".html");
resolver.setTemplateMode("HTML5");
resolver.setCacheable(false);
resolver.setOrder(1);
return resolver;
}
@Bean()
public TemplateResolver customPublicTemplateResolver() {
ServletContextTemplateResolver resolver = new ServletContextTemplateResolver();
resolver.setPrefix("/WEB-INF/templates/custom/");
resolver.setSuffix(".html");
resolver.setTemplateMode("HTML5");
resolver.setCacheable(false);
resolver.setOrder(2);
return resolver;
}
正在提供页面,唯一的问题是 css 和 js 没有。我收到 .html 文件中包含的每个 css 和 js 的错误。我从字面上将一个测试 css 文件移动到每个可能的目录以尝试访问它,但此时我没有想法。请让我知道我做错了什么以及是否需要进一步配置。
编辑 2015 年 3 月 31 日
src/main/webapp/templates/default/page99.html
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
<title>Insert title here</title>
<link rel="stylesheet" type="text/css" media="all" href="resources/css/main.css"/>
</head>
<body>
<h1 th:text="${content.title}"> PAGE 99 (/templates/default/page99.html)</h1>
<p th:text="${content.body}">This is dummy content</p>
</body>
</html>
css 是一个简单的文件,它只设置背景颜色,这样我就可以看到它工作了。
最佳答案
当您引用服务器上的项目时,您应该在相应的 thymeleaf 属性中为此使用 thymeleaf @ 方法。
喜欢:
<link th:href="@{/css/style.css}" href="style.css" rel="stylesheet" type="text/css"/>
这会为您生成正确的 URL。 在我的例子中,css 在 src/main/resources/static/css/style.css
关于spring - org.thymeleaf.exceptions.TemplateInputException 异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29357968/