
当方、Tomcat5.0,Eclipseでサーブレットを開発しております。
初歩的な質問で申し訳ありませんが、プロパティファイルの置き場所が
分からず難儀しております。
どなたかご教示願います。
prop.load(new FileInputStream("C:/work/workspace/worktools/mail.properties"));
上記の様にフルパスを指定すると認識するのですが、
prop.load(new FileInputStream("mail.properties"));
この様にパスを省略するとFileNotFoundExceptionが発生してしまいます。WEB-INF直下にファイルを置いてるのですが、間違いなのでしょうか?
No.3ベストアンサー
- 回答日時:
FileInputStreamを相対パスで指定した場合は、JVMの起動ディレクトリがルートになります。
記憶があいまいですが、Eclipseから起動した場合は、workspaceがルートとなるじゃなかったでしょうか。
Tomcatのコンソールから起動した場合は、TOMCAT_HOMTがルートとなります。
通常はそういうことはしないので、クラスパスを通すか、WEB-INF/classeに配置し、ClassLoader#getResourceAsStreamを使います。
ご回答ありがとうございます。
参考にして、以下の様にコードを変更しましたら上手くいきました。
private String fileName = "mail.properties";
private InputStream properties = null;
public MailUtil() {
this.properties = this.getClass().getClassLoader().getResourceAsStream( this.fileName );
}
ちょっと裏技っぽいですが、読めたので良しとします。
ありがとうございました。
No.2
- 回答日時:
サーブレットのコンテキストパスを取得し、
フルパスの形にしてあげなければ
ファイルは読込めません。
prop.load(new FileInputStream(servlet.getServletConfig().getServletContext().getRealPath("/mail.properties")));
面倒であったら、Bundleの使用をお勧めします。
No.1
- 回答日時:
classes\resources の下だと思われます。
Eclipseで開発していて、tomcatと連携してデバッグしているのなら、
src\resources の下に配置しておくと、
classes\resources の下に自動的に配置されることになるとおもいます。
この回答への補足
ご回答ありがとうございます。
早速試したところ、やはり認識されませんでした。
java\resoucesと言うフォルダがあったのでそこに配置してみましたが、やはり認識されませんでした。
一体どう言う事なんでしょうか?
クラスパスの設定が間違っているのでしょうか?
悩んでいます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
JAVAからAdobeReaderを起動する...
-
RMIについて
-
tomcatのstartupについて
-
Tomcatプロジェクトの.properti...
-
eclipse + Tomcat v5.5 で 動的...
-
Tomcatのシャットダウンについて
-
「ファイルが見つかりません D...
-
Eclipseで、プロジェクト名のと...
-
classファイルについて
-
javax.mailがimportできない
-
Javascriptの値をJava(JSP)へ渡...
-
eclipseで1ファイルの警告を100...
-
JSPのクラスをコンパイルできな...
-
eclipseのショトカットキー
-
この <windows.h> はどこに在る...
-
Eclipseでサーブレットを使用す...
-
Eclipse・プロジェクトで、フォ...
-
WMPのインターネット接続で「サ...
-
「ワークスペースをビルド中」...
-
正しいURL指定しているにもかか...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
The requested resource is no...
-
「ファイルが見つかりません D...
-
Tomcatは起動しますが初期index...
-
Tomcatは2、3日に1回再起動...
-
リモートからTomcatにアクセス...
-
Tomcatでwarファイルの展開に失...
-
EclipseからTomcatを起動した際...
-
apache+tomcatの起動手順
-
tomcatをプロジェクト毎に起動...
-
EclipseからTomcatを起動できない
-
Visual C++を複数開くには?
-
javaサーブレットから別サーバ...
-
Eclipse + JBOSS でのデバッグ
-
eclipseからtomcatが起動しない
-
Tomcatプロジェクトの.properti...
-
jspで無限ループ
-
スタンドアロンJavaプログラム(...
-
javaが起動しない
-
Tomcatのシャットダウンについて
-
tomcat起動時にservletを実行
おすすめ情報