私の問題はあなたがかなり一般的だと思う問題ですが、私は今のところ解決策を見つけることができていません。
Tomcat5.5でJavaWebアプリを構築する(ただし、WebLogic環境など、どこにでもデプロイできることが要件であるため、リソースをストリームとしてロードする必要があります)。グッドプラクティスでは、リソースファイルをWEB-INF / classesの下に配置し、ClassLoaderのgetResourceAsStream()メソッドを使用してロードする必要があります。ロードしたいリソースの名前がわかっていれば、すべてうまくいきます。
私の問題は、クラスのサブディレクトリにあるすべてのもの(空でないサブディレクトリを再帰的に含む)をロードする必要があることです。
したがって、たとえば、WEB-INF /classesの下に次のものがある場合:
folderX / folderY
folderX / folderY / fileA.properties
folderX / fileB.properties
アプリケーションを起動する前に実際に名前を知らなくても、fileA.propertiesクラスとfileB.propertiesクラスをロードする必要があります(つまり、WEB-INF / classesの下の任意のディレクトリからリソースを任意にロードする機能が必要です)。
これを行うための最もエレガントな方法は何ですか?必要な情報(必要な各リソースへのリソースパス)を見つけるために、どのオブジェクトに問い合わせることができますか?サーブレット固有ではないソリューションが最適です(可能であれば、すべてをクラスローディングフレームワーク内に保持します)。
前もって感謝します!