Thymeleaf + spring boot 不能一起工作
Posted
技术标签:
【中文标题】Thymeleaf + spring boot 不能一起工作【英文标题】:Thymeleaf + springboot not working together 【发布时间】:2017-02-28 08:02:47 【问题描述】:我想将 springboot 与 thymeleaf 一起使用。我创建了一个控制器,如下所示:
我有这样的项目结构:
package com.mbtimeet.controllers;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class HomeController
@RequestMapping("/hello")
public String index()
return "index";
我有一个 index.html:
<!DOCTYPE html>
<html xmlns:th=“http://www.thymeleaf.org” xmlns="http://www.w3.org/1999/html">
<head>
</head>
<body>
Hi there.
</body>
</html>
而且它只是不工作。打开“http://localhost:8080/hello”页面后出现异常。
日志:http://pastebin.com/MLPgpqph
构建.gradle:
buildscript
ext
springBootVersion = '1.4.1.RELEASE'
repositories
mavenCentral()
dependencies
classpath("org.springframework.boot:spring-boot-gradle-plugin:$springBootVersion")
apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'spring-boot'
jar
baseName = 'mbti-meet'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = 1.8
targetCompatibility = 1.8
repositories
mavenCentral()
dependencies
compile('org.springframework.boot:spring-boot-starter-thymeleaf')
compile('org.springframework.boot:spring-boot-starter-web')
compile("org.springframework.boot:spring-boot-devtools")
testCompile('org.springframework.boot:spring-boot-starter-test')
错误:
2016-10-18 22:58:15.413 ERROR 4896 --- [nio-8080-exec-1] o.a.c.c.C.[.[.[/].[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.thymeleaf.exceptions.TemplateInputException: Exception parsing document: template="index", line 2 - column 16] with root cause
我跟着一个教程,唯一的区别是用户使用了maven。
【问题讨论】:
请复制您帖子中的错误;只是错误而不是整个日志。 【参考方案1】:日志消息会准确地告诉您问题所在。由于某种原因,当您创建 index.html 文件时,xmlns:th=“http://www.thymeleaf.org”
得到了 UTF-8 格式的引号,而不是 ascii 的 "
。因此,Thymeleaf 在解析文件时遇到问题。将属性更新为xmlns:th="http://www.thymeleaf.org"
【讨论】:
我得到了同样的错误,我解决了添加 xmlns:th="thymeleaf.org 作为@ShawClark 的建议,我删除了标签以上是关于Thymeleaf + spring boot 不能一起工作的主要内容,如果未能解决你的问题,请参考以下文章
Spring Boot Thymeleaf 自定义验证器不显示错误
Spring Boot 使用 Thymeleaf 作为模板发送电子邮件 - 配置不起作用
Spring Boot Security - Thymeleaf sec:授权不起作用