2016-06-20 4 views
0

アプリケーションサーバー:IBM WebsphereのGetResourceAsStreamは、WebSphereサーバー上で動作していない

Java 6の

問題:

WEB-INF/libsに/小道具:以下

は、Webアプリケーションのフォルダ構造であります/

問題は次のとおりです。

this.getClass()。getResourceAsStream( '/ props'/+ fileName)ここで、fileNameはWEB-INF/lib/prosのpropsフォルダ内の有効なファイル名です。

方法上方呼び出しているクラスは、JAR内にあるとlib

上記コールはNULLを返すに含まれます。

同じ設定は、インテル®IDE内に統合された拡張モードでデプロイされたWebアプリケーションを使用するtomcatでも機能します。この問題が来ている環境では、アプリケーションは、私はできませんWEB-INF/lib下がクラスパスにあるjarファイルこの

+0

(クラスパスにある)WEB-INF/classesの下で? WebSphereのどのバージョン? – ebullient

+0

戦争として展開されます。 (耳にもできますが、拡張することはできません)。私はwebsphereのバージョン – Atul

+0

をお知らせします。この問題はwebsphereクラスの読み込みに関連していますか?私は本当にこのことについては分かりません – Atul

答えて

2

上の任意の手掛かりを得るためによう助けてください耳 として展開されます。 WEB-INF/lib自体ではありません。

ファイルには、これらのjarファイルのいずれかであること、または必要がありますが、warファイルとしてアプリケーションを実行している場合、またはそれがディスク上に展開されてきた

+0

Javaドキュメントのとおり、getResourceAsStreamはfileNameに/が含まれていれば絶対パスでファイル名を解決します。これは私の場合です.Jarからクラスをロードしたクラスローダはこれを取得できるはずですファイル名は絶対パスであるためです。 – Atul

+0

getResourceAsStream()はクラスパス(ファイルシステムではありません)から**リソース**(ファイルではありません)をロードします。 WEB-INF/libはクラスパスにありません。 –

+0

ありがとうございました。クラスフォルダ内のリソースを移動して試してみます – Atul

関連する問題