【问题标题】:freemarkerConfiguration issue when upgraded from Spring 4.2.2 to 4.3.3从 Spring 4.2.2 升级到 4.3.3 时的 freemarker 配置问题
【发布时间】:2016-10-27 12:12:11
【问题描述】:
<bean id="freemarkerConfiguration"
class="org.springframework.ui.freemarker.FreeMarkerConfigurationFactoryBean"
p:preferFileSystemAccess="false" p:templateLoaderPath="classpath:/" />
在 Spring 4.2.2 中工作,但是当我升级到 4.3.3 时在服务器启动时抛出异常。
原因:java.lang.NoSuchMethodError: freemarker.template.Configuration.(Lfreemarker/template/Version;)V
freemarker 版本:2.3.20
java版本:1.8.0_60
【问题讨论】:
标签:
java
spring
freemarker
【解决方案1】:
Configuration(Version) 在 FreeMarker 2.3.21 中添加。无论如何使用最新版本(2.3.25 ATM)是有益的。
【解决方案2】:
你尝试过经典的实现吗:
<bean id="freemarkerConfig" class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">
<property name="templateLoaderPath"><value>/WEB-INF/freemarker/</value></property>
</bean>
或
<bean id="freemarkerConfiguration" class="org.springframework.ui.freemarker.FreeMarkerConfigurationFactoryBean">
<property name="templateLoaderPath" value="/WEB-INF/freemarker/"/>
</bean>