J'ai lu les autres réponses, mais peu importe , merci
Printemps:
<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: erreur lors de la résolution du modèle "login.html"; le modèle peut ne pas exister ou être accessible par l'un des résolveurs de modèles configurés
Avez-vous besoin d'un résolveur de modèles?
Essayez quelque chose comme ça:
<bean id="templateResolver"
class="org.thymeleaf.templateresolver.ServletContextTemplateResolver">
<property name="prefix" value="/WEB-INF/" />
<property name="templateMode" value="HTML5" />
</bean>
Assurez-vous que /path/after/web-inf/login.html est renvoyé par un contrôleur Spring MVC.
Il vous manque probablement la propriété "suffixe" dans la configuration de templateResolver. Il est recommandé d’utiliser à la fois un chemin "préfixe" (où se trouve le fichier) et un "suffixe" (l’extension de fichier - sinon thymeleaf essaie de résoudre uniquement le "login" sans extension) dans la configuration du résolveur de modèles . Ainsi:
<beans:bean id="templateResolver" class="org.thymeleaf.templateresolver.ServletContextTemplateResolver">
<beans:property name="prefix" value="/WEB-INF/views/"/>
<beans:property name="suffix" value=".html"/>
<beans:property name="templateMode" value="HTML5"/>
<beans:property name="cacheable" value="false"/> <!-- Development only -->
</beans:bean>
Et demander la vue de connexion dans un contrôleur n'inclut pas l'extension de fichier.
@RequestMapping(value = "/login")
public String login(HttpSession session) {
// do stuff
// Thymeleaf (delegated by springmvc) will request the "login" view at which
// point the prefix and suffix are added to resolve the template location.
return "login";
}
Donc, basé sur cette configuration et dans un projet basé sur maven, le fichier login.html devrait se trouver à l'adresse suivante:
${project_home}/src/main/webapp/WEB-INF/views/login.html
Peut-être que supprimer la barre oblique "/" dans le mappage des requêtes du contrôleur fonctionnera.
@RequestMapping(value = "login")