首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从不同模块加载Freemarker模板

问从不同模块加载Freemarker模板
EN

Stack Overflow用户
提问于 2016-02-23 21:47:26
回答 1查看 874关注 0票数 1

我正在尝试使用Freemarker从多个位置加载Spring MVC模板。本项目是利用Intellij开发的。

我有两个maven项目:

  • my-网站:主要maven项目,包含WEB-INF/ftl的自定义模板,例如,WEB-INF/ftl/landing/login.ftl。
  • 泛型模板:它包含WEB-INF/ftl中的通用共济会模板,例如,WEB-INF/ftl/landing/login.ftl

例如,共济会会员可以在“我的网站”中搜索登陆/登录,如果找不到,就在“通用-模板”登陆/登录中搜索。

根据共济会模板加载器文档,freemarker.xml应该如下所示:

代码语言:javascript
复制
    <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>

但我显然做了一些非常错误的事情,因为它不起作用:没有找到泛型模板的文件。

知道我该怎么做吗?(欢迎实现同样目标的其他方法)

我如何调试它?

EN

回答 1

Stack Overflow用户

发布于 2016-02-24 00:40:38

方案部分(包括:之前的部分)是一些集成框架通过自定义TemplateLoader-s使用的部分,而其他部分则不使用,解释方案不是由FreeMarker本身完成的。此外,Spring对资源路径中的方案有自己的想法,这可能会干扰这种机制。

不管如何定制,该方案不应该引用Maven模块名称,因为Maven模块在运行时并不真正存在。相反,您应该将这两组模板放在WEB下的不同目录下,然后在templateLoaderPaths中列出这两种路径,类似于您所做的那样。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35588895

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档