我目前正在通过Thymeleaf设置Spring MVC项目,请按照http://www.thymeleaf.org/doc/tutorials/3.0/thymeleafspring.html#spring-mvc-configuration上的指南进行操作>
[尝试亲吻代码,我首先用implements ApplicationContextAware
替换了@Inject private ApplicationContext applicationContext
和setter方法。但是我不明白为什么我必须在继承继承Spring接口setApplicationContext()
的SpringResourceTemplateResolver
上调用ApplicationContextAware
。
如何避免这种情况?
编辑:如果删除templateResolver.setApplicationContext(applicationContext);
行,则在访问根目录时会出现此异常:
java.lang.IllegalArgumentException: Application Context cannot be null org.thymeleaf.util.Validate.notNull(Validate.java:37) org.thymeleaf.spring4.templateresource.SpringResourceTemplateResource.<init>(SpringResourceTemplateResource.java:64) org.thymeleaf.spring4.templateresolver.SpringResourceTemplateResolver.computeTemplateResource(SpringResourceTemplateResolver.java:69) org.thymeleaf.templateresolver.AbstractConfigurableTemplateResolver.computeTemplateResource(AbstractConfigurableTemplateResolver.java:1221) org.thymeleaf.templateresolver.AbstractTemplateResolver.resolveTemplate(AbstractTemplateResolver.java:356) org.thymeleaf.engine.TemplateManager.resolveTemplate(TemplateManager.java:840) org.thymeleaf.engine.TemplateManager.parseAndProcess(TemplateManager.java:608) org.thymeleaf.TemplateEngine.process(TemplateEngine.java:1087) org.thymeleaf.TemplateEngine.process(TemplateEngine.java:1061) org.thymeleaf.spring4.view.ThymeleafView.renderFragment(ThymeleafView.java:335) org.thymeleaf.spring4.view.ThymeleafView.render(ThymeleafView.java:189) org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1257) org.springframework.web.servlet.DispatcherServlet.processDispatchResult(DispatcherServlet.java:1037) org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:980) org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:897) org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970) org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:861) javax.servlet.http.HttpServlet.service(HttpServlet.java:622) org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846) javax.servlet.http.HttpServlet.service(HttpServlet.java:729) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
注意:我使用的是最新版本:Spring 4.3.3.RELEASE和Thymeleaf 3.0.2.RELEASE(当然,我导入了
thymeleaf-spring4
)。
我目前正在与Thymeleaf一起建立Spring MVC项目,请按照以下教程中的说明进行操作:http://www.thymeleaf.org/doc/tutorials/3.0/thymeleafspring.html#spring-mvc-configuration尝试对进行亲吻。 ..
[重新检查我错过的内容后,似乎缺少的@Configuration
注释是Spring的来源,未将ApplicationContext
注入SpringResourceTemplateResolver
。