这是我的Velocity模板的一部分。
#if($!user.type==2)
<div class="main-site-styles">
#include('http://***/ca/88/4-9924.inc')
</div>
#end
当我运行它时,IDE控制台给出
[http-apr-80-exec-4] ERROR apache.velocity (CommonsLogLogChute.java:96) - ResourceManager : unable to find resource 'http://***/ca/88/4-9924.inc' in any resource loader.
在浏览器中访问URL是OK的。我不知道我忘记写什么构型了
velocity引擎通过使用抽象类ResourceLoader的实现来完成模板加载/解析工作。默认的实现是从文件系统中加载资源。
我认为你打算为URLResourceLoader提供一个自定义行为,因为你也想从文件系统和远程位置加载模板。也就是说,如果你引用源代码,你应该能够实现一个自定义的ResourceLoader,它的行为方式是你想要的。
一个选项,从URLResourceLoader中删除大部分代码,并改变它确定从文件系统/远程位置加载模板内容的方式。
我会将所有打开流的材料转储到模板中,因为您将确定要加载内容的特定位置。
希望这能提供足够的帮助。我建议把它放在调试器中,并确定什么是传递的,什么不是传递给相关的加载方法。