Java Servlet上下文模板解析器错误与Thymeleaf spring MVC集成
我曾尝试将thymeleaf与spring mvc结合使用,但在servlet上下文的xml配置文件中,它显示了ServletContextTemplateResolver的以下错误: 在此行找到多个批注: -类“org.thymeleaf.templateresolver.ServletContextTemplateResolver”中未定义具有0个参数的构造函数 -类“org.thymeleaf.templateresolver.ServletContextTemplateResolver”中未定义具有0个参数的构造函数 下面是我的POM.xml和Servlet-Context.xmlJava Servlet上下文模板解析器错误与Thymeleaf spring MVC集成,java,spring,spring-mvc,thymeleaf,Java,Spring,Spring Mvc,Thymeleaf,我曾尝试将thymeleaf与spring mvc结合使用,但在servlet上下文的xml配置文件中,它显示了ServletContextTemplateResolver的以下错误: 在此行找到多个批注: -类“org.thymeleaf.templateresolver.ServletContextTemplateResolver”中未定义具有0个参数的构造函数 -类“org.thymeleaf.templateresolver.ServletContextTemplateResolver”
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns:mvc="http://www.springframework.org/schema/mvc"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://www.springframework.org/schema/beans"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.1.xsd">
<!-- DispatcherServlet Context: defines this servlet's request-processing infrastructure -->
<!-- Enables the Spring MVC @Controller programming model -->
<mvc:annotation-driven />
<context:component-scan base-package="com.mahfoud.web"/>
<!-- Handles HTTP GET requests for /resources/** by efficiently serving up static resources in the ${webappRoot}/resources directory -->
<mvc:resources mapping="/resources/**" location="/resources/" />
<!-- Resolves views selected for rendering by @Controllers to .jsp resources in the /WEB-INF/views directory -->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/views/" />
<property name="suffix" value=".jsp" />
</bean>
<!-- SpringResourceTemplateResolver automatically integrates with Spring's own -->
<!-- resource resolution infrastructure, which is highly recommended. -->
<bean id="viewResolver" class="org.thymeleaf.spring4.view.ThymeleafViewResolver">
<property name="templateEngine" ref="templateEngine" />
<property name="order" value="1" />
<property name="viewNames" value="*.html,*.xhtml" />
</bean>
<bean id="templateResolver" class="org.thymeleaf.templateresolver.ServletContextTemplateResolver">
<property name="prefix" value="/WEB-INF/templates/" />
<property name="suffix" value=".html" />
<property name="templateMode" value="HTML5" />
</bean>
<bean id="templateEngine" class="org.thymeleaf.spring4.SpringTemplateEngine">
<property name="templateResolver" ref="templateResolver" />
<property name="enableSpringELCompiler" value="true" />
</bean>
</beans>
POM:
4.0.0
com.mahfoud
升级到thymeleaf.spring4后
<dependency>
<groupId>org.thymeleaf</groupId>
<artifactId>thymeleaf-spring4</artifactId>
<version>2.1.5.RELEASE</version>
</dependency>
<dependency>
<groupId>org.thymeleaf</groupId>
<artifactId>thymeleaf</artifactId>
<version>2.1.5.RELEASE</version>
</dependency>
org.thymeleaf
百里香
2.1.5.1发布
org.thymeleaf
百里香
2.1.5.1发布
我使用了以下代码来实例化模板
<bean id="templateResolver" class="org.thymeleaf.spring4.templateresolver.SpringResourceTemplateResolver">
<property name="prefix" value="/WEB-INF/templates/" />
<property name="suffix" value=".html" />
<property name="templateMode" value="HTML5" />
</bean>
你可以看看这个答案,它一定很有帮助Yes@Bogdank我看到了,它确实有帮助,但它没有遵循文档,我正在寻找一种更干净的方法,我想使用不需要参数的org.thymeleaf.templateresolver.ServletContextTemplateResolver版本,我的意思与他们在“thymeleaf+spring集成”文档中使用的类似
<bean id="templateResolver" class="org.thymeleaf.spring4.templateresolver.SpringResourceTemplateResolver">
<property name="prefix" value="/WEB-INF/templates/" />
<property name="suffix" value=".html" />
<property name="templateMode" value="HTML5" />
</bean>