spring-boot-starter-thymeleaf对没有结束符的HTML5标签解析出错

Posted tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了spring-boot-starter-thymeleaf对没有结束符的HTML5标签解析出错相关的知识,希望对你有一定的参考价值。

springboot 在使用thymeleaf 作为模板时,当出现未关闭标签时,如下所示代码,标签没有关闭。

<link href="plugin/layui/css/layui.css" rel="stylesheet" >

 

会出现如下异常:

org.xml.sax.SAXParseException: 元素类型 "meta" 必须由匹配的结束标记 "</meta>" 终止。

可以通过配置thymeleaf属性并结合nekohtml即可实现关闭对非标准html5标签的检查。

首先在项目pom文件中加入对nekohtml的依赖:

<dependency>
     <groupId>net.sourceforge.nekohtml</groupId>
     <artifactId>nekohtml</artifactId>
     <version>${nekohtml.version}</version>
</dependency>
               

然后再springboot application配置文件中加入以下配置,properties配置为:spring.thymeleaf.mode=LEGACYHTML5

yml配置文件为:

spring:
  thymeleaf:
    mode: LEGACYHTML5  # 不进未关闭标签检查,需配合nekohtml使用
    cache: false  # 关闭缓存,开发过程中开启

配置完成之后重启项目即可。

 

以上是关于spring-boot-starter-thymeleaf对没有结束符的HTML5标签解析出错的主要内容,如果未能解决你的问题,请参考以下文章