org.thymeleaf.exceptions.TemplateInputException: Error resolving template 報錯


org.thymeleaf.exceptions.TemplateInputException: Error resolving template報錯


遇到二次,第一次是剛剛學的時候,都是一個原因,而且又看到網上的解決方法

又不相信懶得C,結果找了我半天

(主要自己之前沒加這個也可以,但是突然就不可以了,還是抱着試一試)


在controller層請求處理完了返回時,沒有使用@RestController或@ResponseBody而返回了非json格式


這種情況下返回的數據thymeleaf模板無法解析,直接報錯,本人正式因為這個原因才報錯。

解決方案:可以將@Controller換成@RestController,不過需要注意有沒有其他的方法返回了html頁面,會導致返回的不是頁面而是字符串;最好的方法就是在你所請求的方法上面加一個@ResponseBody即可。


在你的controller層對應的方法返回html路徑及名稱時,在前面多加了一個/ 。


例如return "/index",正式這個/導致報錯的,解決:去掉返回前面的/即可,例如return "/index" 。

在使用springboot的過程中,如果使用thymeleaf作為模板文件,則要求HTML格式必須為嚴格的html5格式,必須有結束標簽,否則會報錯。




解決辦法如下:

在application.yml中添加以下配置

spring.thymeleaf.content-type: text/html 
spring.thymeleaf.cache: false 
spring.thymeleaf.mode: LEGACYHTML5

再在pom.xml 添加以下依賴

<dependency> 
<groupId>net.sourceforge.nekohtml</groupId> 
<artifactId>nekohtml</artifactId> 
<version>1.9.22</version> 
</dependency>



資源文件的路徑被修改,如果你其他的請求都正常返回則可忽略這條。


解決:在pom.xml文件的 中加入
<resource>
 <directory>src/main/resources</directory>
</resource>

這就是我收集到的報錯了


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM