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>
這就是我收集到的報錯了