速度と異なるパスからテンプレートを取得することが可能であるならば誰でも知っていますか?初期化後、Velocityは "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));
}
これは動作していません。一度Velocityが初期化されると、それは異なるプロパティでリセットすることはできないようです。どのようにこの問題を解決するための任意の提案?
可能なプログラムフロー:
- ユーザー
- ユーザー(HDD上の任意の場所に配置することができる)
- ユーザ押下使用するテンプレートを選択するテンプレートに充填する必要があるグループを選択します生成する
に私はそれはそれと同じくらい簡単です。..直後にこれを発見しました。ありがとうございました! – Arninja