我使用MultipartFile通过类路径在我的Spring MVC应用程序配置为加载Freemarker模板:无法使用multipartResolver
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<property name="maxUploadSize" value="1000000"/>
</bean>
<bean id="MyController" class="myController">
<property name="myTemplate" value="classpath:myTemplate.txt"/>
</bean>
,我试图用的freemarker为了加载此templete:
public class MyController
{
private Resource myTemplate;
....
Configuration cfg = new Configuration();
Template tpl = cfg.getTemplate(myTemplate.getFilename());
但是当我运行它,我得到一个错误:模板类路径:myTemplate.txt没有找到
我试着使用:cfg.setDirectoryForTemplateLoading(myTemplate.getFile().getParentFile())
来确定目录,但这也没有帮助。
任何想法......?
我只创建一次配置对象,这在这里显示尝试并简化我想要做的事情。我想缩小我的问题将是:我如何使用Spring资源文件作为免费标记中的Templete – Joly 2012-03-13 08:30:01
据我所知,在Spring中有一个'ResourceLoader',它可以将资源字符串解析为'Resource'对象。所以你应该实现一个代表“ResourceLoader”的'TemplateLoader'。 (当然,除非Spring FreeMarker支持已经实现了。)然后使用'cfg.setTemplateLoader(yourResourceTemplateLoader)'。 – ddekany 2012-03-13 09:19:28
我希望避免开发自己的TemplateLoader。当然,有一种方法可以让Freemarker从类路径中加载模板? – Joly 2012-03-14 11:44:48