[英]Error while integrating Freemarker to Spring mvc
我試圖將Freemarker模板集成到Spring mvc應用程序中。 我試過它作為教程中的節目。這是代碼,我使用的是freemarker 2.3.15
<!-- freemarker config -->
<beans:bean id="freemarkerConfig" class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">
<beans:property name="templateLoaderPath" value="/WEB-INF/views/"/>
</beans:bean>
<!--
View resolvers can also be configured with ResourceBundles or XML files. If you need
different view resolving based on Locale, you have to use the resource bundle resolver.
-->
<beans:bean id="viewResolver" class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver">
<beans:property name="cache" value="true"/>
<beans:property name="prefix" value="/WEB-INF/views/"/>
<beans:property name="suffix" value=".ftl"/>
</beans:bean>
它給出了錯誤:
1. Build path is incomplete. Cannot find class file for org/springframework/ui/freemarker/
FreeMarkerConfigurationFactory
2.No setter found for property 'templateLoaderPath' in class
'org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer' [config set: Warehouse/web-context]
將spring-context-support
依賴項添加到項目中。
在pom.xml中,
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context-support</artifactId>
<version>3.2.4.RELEASE</version>
</dependency>
參考: 帶Freemarker的ClassNotFoundException
和
幾年后我遇到了這個問題。 我在網上找到的解決方案都沒有。 我不知道FreeMarker或Spring庫是否改變了什么。 我終於找到了一個有效的解決方案。
我有以下代碼:
@Autowired
private FreeMarkerConfigurationFactoryBean freeMarkerConfigFactory;
將此jar包含在另一個項目中時,該項目可能突然不再解析此依賴項。 我正在研究的新項目實際上並不需要FreeMarker,但我需要讓Spring解決依賴關系以便我的程序運行。
我注釋掉了上面兩行,而是添加了以下內容:
private FreeMarkerConfigurationFactoryBean freeMarkerConfigFactory = new FreeMarkerConfigurationFactoryBean();
這允許我的程序運行,因為Spring不需要自動裝配這個bean。
多年來,為什么它停止工作,我不知道。 另外,我沒有測試上面的代碼,因為我再次不需要FreeMarker。 我只需要自動裝配工作。
也許這會幫助別人(或者在我五年后再次尋找這個解決方案時幫助我。因為我已經解決了一次,但沒有在自述文件中記錄它。我必須在代碼中找到我的評論。 )
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.