freemarker渲染远程服务器(如ftp)上的模板文件问题
现在的需求是这样的:
1. 模板文件现在都放在了远程FTP服务器上 ;
2. 现在要将FTP服务器上的模板文件静态化 ;
问题:
使用freemarker进行渲染时,获取远程的模板文件,我使用了URLTemplateLoader,这样是可以获取并成功渲染单个指定的模板文件的。但是,如果模板文件里包含(include)了其他的模板文件的话,渲染就失败了,后台就会无限的查询,直到内存溢出,请问我该怎么做,才能渲染成功?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
我就是自己定义的URLTemplateLoader,你说的include同样使用,是什么意思?
我自己定义的如下:
public class MyUrlTemplateLoader extends URLTemplateLoader {
private URL myUrl;
public MyUrlTemplateLoader(URL myUrl) {
this.myUrl = myUrl;
}
@Override
protected URL getURL(String name) {
return myUrl;
}
}
模板中包含还是这样子的:
[#include "../include/header.html"/]
请问include怎么使用URLTemplateLoader?
我就是自己定义的URLTemplateLoader,你说的include同样使用,是什么意思? 模板中包含还是这样子的: [#include "../include/header.html"/] 请问include怎么使用URLTemplateLoader?
看一下源代码,include 指令使用的哪个loader 另外 Loader 打印一下每次的 url,多调试调试, 真是环境只有你自己知道,只能给你这些思路了
尝试定义自己的URLTemplateLoader
然后 核实一下 include 是否同样使用的 URLTemplateLoader
希望只是 URLTemplateLoader 的问题,这样 你只需要自己定义一个Loader 就能解决问题