有谁知道是否有可能从速度不同的路径得到的模板? 初始化速度后拒绝改变“file.resource.loader.path”。
这是我的代码:
public Generator(){
Properties p = new Properties();
p.setProperty("resource.loader", "file");
p.setProperty("file.resource.loader.class", "org.apache.velocity.runtime.resource.loader.FileResourceLoader");
p.setProperty("file.resource.loader.path", "");
Velocity.init(p);
}
模板可以位于不同的位置(用户可以选择一个与文件对话框)。 所以,我在取出模板出速度有此代码
private Template fetch (String templatePath) {
out_println("Initializing Velocity core...");
int end = templatePath.lastIndexOf(File.separator);
Properties p = new Properties();
p.setProperty("file.resource.loader.path", templatePath.substring(0, end));
Velocity.init(p);
return Velocity.getTemplate(templatePath.substring(end+1));
}
这是行不通的。 看来,一旦速度被初始化它不能与不同的属性重置。 如何解决这个问题有什么建议?
可能的程序流程:
- 用户选择需要被填充到模板组
- 用户选择要使用的模板(可以位于任何地方的HDD)
- 用户按下产生