人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

Tomcat v4.1 サーバ上でjava.lang.Class.getResourceAsStreamメソッドを使う場合の設定について教えてください。

All-In-One-EclipseでTomcat4.1サーバを動かそうとしています。ただリソースファイル(properties)ファイルの読み込みに失敗してしまいます。
具体的にはWEB-INF/classes/test/a.propertiesというリソースファイルを/test/a.propertiesという名前でgetResourceAsStreamで読み込むと失敗しています。
同じソースで本番サーバ上では動いていますのでたぶんeclipseのTomcatのクラスパス周りの設定だとは思っていますが
WEB-INF/classes上のjavaファイルは動作しているしパスは通っていると思います・・。
getResourceAsStreamがWEB-INF/classesを探しに行くようにするのはどのようにすればいいかわかる方教えてください。

補足としてgetResourceAsStreamを使っているのは外部jarファイルの中ですので他のメソッドを使うなどは出来ません。
org.apache.commons.dbutils.QueryLoader.loadを使っています。

●質問者: matttsu
●カテゴリ:コンピュータ
✍キーワード:.DB ALL Apache Class commons
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● ma-kanoh
●60ポイント

http://www.ingrid.org/jajakarta/servletapi/servletapi-4.0/do...

そもそもパスの場所が違います。

WEB-INF/classes/test/a.properties

getResourceAsStream("/WEB-INF/classes/test/a.properties");

で取るのが正しいです。

◎質問者からの返答

ServletContextではなくjava.lang.Class.getResourceAsStreamなんですが大丈夫でしょうか?あとサーバでは同じソースでも動いているのが・・。

今日はもう試せないので明日、教えていただいだ方法で試してみます。

試してみましたが無理でした。ただ/WEB-INF/classesにクラスパスを通すことでうまくいくようになりました。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ