SpringBoot导入thymeleaf模板,运行报错。

  • 报错:
    SpringBoot导入thymeleaf模板,运行报错org.xml.sax.SAXParseException: 元素类型 “link” 必须由匹配的结束标记 终止。

1、新建SpringBoot MAVEN项目后 JAR类型的项目
2、新增pom.xml文件


  4.0.0
  cn.xdl
  ovls_exam_web
  0.0.1-SNAPSHOT
  
   
	org.springframework.boot
	spring-boot-starter-parent
	1.4.7.RELEASE
	
  
  
  
	UTF-8
	UTF-8
	1.7
  
  
  
		
		
			org.springframework.boot
			spring-boot-starter
		
		
		
		
			org.springframework.boot
			spring-boot-starter-web
		
		
		
		
		  jstl
		  jstl
		  1.2
		
		
		
		
		  org.apache.tomcat.embed
		  tomcat-embed-jasper
		
		
		
  		
		  org.springframework.boot
		  spring-boot-devtools
		

		
		
			org.springframework.boot
			spring-boot-starter-thymeleaf
		

  
  

3、新增application.properties

#server
server.port=7778

#thymeleaf
spring.thymeleaf.prefix=classpath:/templates/exam/
spring.thymeleaf.suffix=.html #可以去掉 默认就是html

4、主启动类

package cn.xdl.ovls.exam;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class ExamWebBootApplication {
	public static void main(String[] args) {
		SpringApplication.run(ExamWebBootApplication.class, args);
	}
}

5、编写controller

package cn.xdl.ovls.exam.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;

@Controller
public class ExamController {

	@RequestMapping("/exam/home")
	public ModelAndView home(){
		System.out.println("abc");
		ModelAndView mav = new ModelAndView();
		mav.setViewName("home");
		return mav;
	}
}

项目路径如下图
SpringBoot导入thymeleaf模板,运行报错。_第1张图片

6.浏览器输入URL请求:
http://localhost:7778/exam/home
浏览器报错:500错误
本地服务器:后台错误,但是能进Controller,信息如下
报错org.xml.sax.SAXParseException: 元素类型 “link” 必须由匹配的结束标记 “” 终止。
类似的错误还有:
org.xml.sax.SAXParseException: 元素类型 “meta” 必须由匹配的结束标记 “” 终止。
SpringBoot导入thymeleaf模板,运行报错。_第2张图片

7.错误原因:
SpringBoot导入thymeleaf模板,运行报错。_第3张图片

8.解决办法:
1、pom.xml文件引入HTML5非强制语法校验
2、追加application.properties定义

 
  4.0.0
  cn.xdl
  ovls_exam_web
  0.0.1-SNAPSHOT
  
   
	org.springframework.boot
	spring-boot-starter-parent
	1.4.7.RELEASE
	
  
  
  
	UTF-8
	UTF-8
	1.7
  
  
  
		
		
			org.springframework.boot
			spring-boot-starter
		
		
		
		
			org.springframework.boot
			spring-boot-starter-web
		
		
		
		
		  jstl
		  jstl
		  1.2
		
		
		
		
		  org.apache.tomcat.embed
		  tomcat-embed-jasper
		
		
		
  		
		  org.springframework.boot
		  spring-boot-devtools
		

		
		
			org.springframework.boot
			spring-boot-starter-thymeleaf
		
		
		 
			net.sourceforge.nekohtml 
			nekohtml 
		 
  
  

追加application.properties定义

#server
server.port=7778

#thymeleaf
spring.thymeleaf.prefix=classpath:/templates/exam/
#spring.thymeleaf.suffix=.html
#启用thymeleaf非严格检查
#spring.thymeleaf.content-type=text/html 
#spring.thymeleaf.cache=false 
spring.thymeleaf.mode =LEGACYHTML5

浏览器输入请求可以正常访问了。

你可能感兴趣的:(前端语言,JAVA)