「リソースファイルを WEB-INF/classes 以外の場所に配置できないもんか」の続き。
クラスローダーから見えない properties ファイルは参照できないんだなー、残念だなー、今日の雨は秋の訪れを予感させるなー、おでん食べたいなー、とか思っていたのだけど、実は相対パスで上の階層まで見れることが判明!
ClassLoader loader; InputStream inputStream = null;
String path = "../../hoge/test.properties"; Properties properties = new Properties();
try { loader = Thread.currentThread().getContextClassLoader(); inputStream = new BufferedInputStream(loader.getResourceAsStream(path)); properties.load(inputStream); } catch (IOException e) { e.printStackTrace(); } finally { if (inputStream != null) { try { inputStream.close(); } catch (Exception e) { // } } }
こんなことができるとは知らなんだ。頭は柔軟じゃないとダメっすね。
このエントリーのトラックバックURL
http://www.deftrash.com/admin/mt4/mt-tb.cgi/351
Definitely educating story, saved your blog regarding hopes to be able to find more!