默認配置下,thymeleaf對.html的內容要求很嚴格,比如<meta charset="UTF-8" />,如果少最後的標籤封閉符號/,就會報錯而轉到錯誤頁。也比如你在使用Vue.js這樣的庫,然後有<div v-cloak></div>這樣的html代碼,也會被thymeleaf認爲不符合要求而拋出錯誤。
通過設置thymeleaf模板可以解決這個問題,下面是具體的配置:
spring.thymeleaf.content-type=text/html
spring.thymeleaf.cache=false
spring.thymeleaf.mode =LEGACYHTML5
LEGACYHTML5需要搭配一個額外的庫NekoHTML纔可用
項目中使用的構建工具是Maven添加如下的依賴即可完成:
<dependency>
<groupId>net.sourceforge.nekohtml</groupId>
<artifactId>nekohtml</artifactId>
<version>1.9.22</version>
</dependency>