I've read the other answers, but no matter,thanks
Spring:
<bean id="templateEngine" class="org.thymeleaf.spring3.SpringTemplateEngine">
<property name="templateResolver" ref="templateResolver" />
</bean>
<bean class="org.thymeleaf.spring3.view.ThymeleafViewResolver">
<property name="templateEngine" ref="templateEngine" />
<property name="order" value="1" />
</bean>
pom.xml:
<dependency>
<groupId>org.thymeleaf</groupId>
<artifactId>thymeleaf</artifactId>
<version>2.0.13</version>
</dependency>
<dependency>
<groupId>org.thymeleaf</groupId>
<artifactId>thymeleaf-spring3</artifactId>
<version>2.0.13</version>
<exclusions>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
</exclusion>
</exclusions>
<scope>compile</scope>
</dependency>
org.thymeleaf.exceptions.TemplateInputException: Error resolving template "login.html", template might not exist or might not be accessible by any of the configured Template Resolvers
Do you need a template resolver?
Try something like this:
Make sure that /path/after/web-inf/login.html is being returned by a Spring MVC controller.
You are likely missing the "suffix" property within the templateResolver configuration. It should be best practice to use both a path "prefix" (where the file is located) and a "suffix" (the file extension - otherwise thymeleaf tries to resolve just "login" w/o an extension) within the template resolver configuration. Like so:
And requesting the login view within a controller does not include the file extension.
So based on this configuration and within a maven-based project, the login.html should be located at
Maybe remove slash "/" in the controller request mapping will work.