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

出現的錯誤就是標題所寫的:org.thymeleaf.exceptions.TemplateInputException: Error resolving template 報錯,也就是下面這代碼html

@GetMapping("/")
   public String index() {
       return "index";
   }

一開始出這個錯誤,我立馬百度了一下,而後看到了下面幾種解答

html5

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

我用了這個辦法,確實解決了,沒有報錯,可是跳轉的頁面顯示就是index這字符,根本沒跳頁面,因此我又查了這個問題,其餘博客有人回答了,@Restcontroller給頁面返回的是字符串類型而不是json類型,必須將@Restcontroller改回@controlle,而後改回來又報錯。。。當初真的絕望,死循環!!!而後下面幾種方法對我都沒用,可是可能對大家有用,我也一塊兒分享一下!


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

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

緩存

3.在使用springboot的過程當中,若是使用thymeleaf做爲模板文件,則要求HTML格式必須爲嚴格的html5格式,必須有結束標籤,不然會報錯springboot

解決辦法以下:
在application.yml中添加如下配置app

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

再在pom.xml 添加如下依賴code

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

4.資源文件的路徑被修改,若是你其餘的請求都正常返回則可忽略這條
解決:在pom.xml文件的中加入xml

<resource>
 <directory>src/main/resources</directory>
</resource>

以上三種方法對我沒啥用

個人問題其實好像是由於緩存問題,由於前面的都出了問題,當時花了2個小時,而後就是重啓了一下IDEA,結果莫名奇妙的就行了,因此若是你們也遇到這種狀況,上面方法都沒用的時候,不如重啓一下IDEA或許就行了,也能夠清一下緩存!清緩存的地方:
htm

相關文章
相關標籤/搜索