我有一個Web應用程序,它使用駐留在TOMCAT_HOME/common/lib中的庫。這個庫查找一個特性在classpath的根目錄文件(在一個名爲ApplicationConfig類):getResourceAsStream不加載webapp中的資源
ApplicationConfig.class.getResourceAsStream("/hv-application.properties");
我的Tomcat Web應用程序包含此屬性文件。它在WEB-INF/classes中,這是類路徑的根?然而,在運行時,當它試圖加載屬性文件時,它會拋出一個異常,因爲它找不到它(getResourceAsStream返回null)。
如果我的應用程序是一個簡單的獨立Java應用程序,一切正常。 Tomcat是否會導致getResourceAsStream方法的行爲不同?我知道那裏有很多類似的問題,但不幸的是他們都沒有幫助。謝謝。
謝謝binil。這是有效的,但我寧願不必對庫進行任何更改。如果找不到其他解決方案,將標記爲答案。 – Michael 2010-04-16 14:49:13
奇怪的是,在Tomcat 5.5下使用Win XP和JDK 1.5.08,我能夠在不使用前導「/」的情況下加載資源文件。實際上,當預先加入「/」時,我遇到了問題。 – Olivier 2011-01-03 22:52:15