2015-03-30 34 views
3

我的Spring 4/Thymeleaf设置存在一些严重问题。这是错误消息:org.thymeleaf.exceptions.TemplateInputException

Error resolving template "public/bootstrap/js/bootstrap.min", template might not exist or might not be accessible by any of the configured Template Resolvers 

出于某种原因,好像他们是不是静态的春天或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 /主/ web应用/模板/默认/ 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是一个简单的文件,只有设置背景颜色,只是所以我可以看到它的工作。

+0

你是如何在项目中包含引导文件的?您是使用webjar还是手动将js文件包含在项目目录中? – Jigish 2015-03-31 00:00:09

+0

我没有使用网络罐,这些文件在我的项目中 – 2015-03-31 00:14:39

+0

这是一个'春季启动“应用程序或香草泉? – 2015-03-31 00:34:58

回答

0

当您在服务器上引用项目时,应该在相应的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中

相关问题