我正在尝试使用Freemarker从多个位置加载Spring MVC模板。本项目是利用Intellij开发的。
我有两个maven项目:
WEB-INF/ftl的自定义模板,例如,WEB-INF/ftl/landing/login.ftl。WEB-INF/ftl中的通用共济会模板,例如,WEB-INF/ftl/landing/login.ftl例如,共济会会员可以在“我的网站”中搜索登陆/登录,如果找不到,就在“通用-模板”登陆/登录中搜索。
根据共济会模板加载器文档,freemarker.xml应该如下所示:
<bean id="freemarkerConfig" class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">
<property name="templateLoaderPaths" value="generic-templates://WEB-INF/ftl/,/WEB-INF/ftl/" />
</bean>
<bean id="viewResolver" class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver">
<property name="cache" value="true"/>
<property name="prefix" value=""/>
<property name="suffix" value=".ftl"/>
</bean>但我显然做了一些非常错误的事情,因为它不起作用:没有找到泛型模板的文件。
知道我该怎么做吗?(欢迎实现同样目标的其他方法)
我如何调试它?
发布于 2016-02-24 00:40:38
方案部分(包括:之前的部分)是一些集成框架通过自定义TemplateLoader-s使用的部分,而其他部分则不使用,解释方案不是由FreeMarker本身完成的。此外,Spring对资源路径中的方案有自己的想法,这可能会干扰这种机制。
不管如何定制,该方案不应该引用Maven模块名称,因为Maven模块在运行时并不真正存在。相反,您应该将这两组模板放在WEB下的不同目录下,然后在templateLoaderPaths中列出这两种路径,类似于您所做的那样。
https://stackoverflow.com/questions/35588895
复制相似问题