[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[jfriends:00085] Turbine で Velocity のエラー
疋田と申します。
現在、Turbine・Velocityを利用したWebアプリケーションの開発(改造)をして
おります。
#他人の作成したコードを改造しております。
環境は、
・tdk2.1
・jdk1.4.1_01
・Velocity-1.3
です。
現在、SecureScreen.javaの中から、下記のFugaFugaのインスタンスを作成し、
メソッドHogeHogeを呼び出すところでエラーが発生しています。
# すみません。まだTurbineの仕組みが完全に把握できてません。
# とにかく、SecureScreen.java(のサブクラスなんでしょうけど)
# が実行されているということは把握してます。
エラーの内容は、
DEBUG (jp.co.ntt.cocofolio.explorer.ExplorerManager:SVGStringWriter:84)
- Exception: org.apache.velocity.exception.ResourceNotFoundException:Unable to find resource
'c:\programfiles\eclipse\workspace\myapp\webapps\myapp\resource\template.vm'
というものです。
template.vm自体は、エラーメッセージにおけるパス上に配置しております。
なぜ、
>Velocity.init(TurbineServlet.getRealPath(resourcePath+ "/init.prp")) ;
がうまく通るのに、
>Velocity.mergeTemplate(TurbineServlet.getRealPath(resourcePath+"/template.vm"), "EUC-JP", vctx,sw);
が通らないのかが分かりません。
どうかヒントだけでもかまいませんので、お教えいただけないでしょうか。
よろしくお願いいたします。
========== TurbineResources.properties(抜粋)
my.resource=/resource
========== FugaFuga.java(抜粋)
import org.apache.velocity.app.* ;
import org.apache.velocity.* ;
import java.io.* ;
import org.apache.turbine.services.servlet.TurbineServlet;
import org.apache.turbine.services.resources.TurbineResources;
public class FugaFuga {
public StringWriter HogeHoge() {
StringWriter sw = new StringWriter() ;
String resourcePath=TurbineResources.getString("my.resource") ;
try {
VelocityContext vctx = new VelocityContext() ;
Velocity.init(TurbineServlet.getRealPath(resourcePath+ "/init.prp")) ;
Velocity.mergeTemplate(TurbineServlet.getRealPath(resourcePath +"/template.vm"), "EUC-JP", vctx,sw);
return sw ;
} catch ( Exception ex ) {
return sw ;
}
}
}
---------------
Keiichi HIKITA
NTT Cyber Solutions Laboratories
Mail: hikita.keiichi@xxxxxxxxxxxxx
Tel : 0422-59-7785 Fax : 0422-59-3931