我有一些資源文件位於我的Web應用程序的類路徑中(如果是這樣的話,在JAR中)。我知道我可以通過撥打這些資源來訪問這些資源的內容。 SomeClassLoader.getResourceAsStream("/samples/myscript.txt")
。我已經在過去測試過這兩個爆炸和未爆炸成功的WAR文件。我可以在非爆炸WAR中的JAR內獲得URLConnection嗎?
但是,爲了與我的應用程序中的其他一些現有類集成,我需要爲該文件提供一個URLConnection對象。我測試並確認,調用getResource("/samples/myscript.txt").openConnection()
工程爆炸 WAR(另外,調試發現,結果是file:///
到爆炸文件的URL)。
問題:該方法是否也可以工作不爆炸(「打包?」)WAR? (我目前不能輕鬆訪問部署戰爭而不爆炸它們的服務器,因此我爲什麼要問,而不是直接嘗試它。此外,一些服務器(例如Jetty,Tomcat - 即使使用unpackWARs="false"
)也允許非爆炸式的部署,但在幕後他們打開了戰爭的包裝,有效地表現爲像爆炸式部署 - 顯然,正常工作。我認爲過去給我帶來麻煩的服務器是Websphere和Weblogic)。
您的意思是說資源位於WAR文件內部的JAR文件中? – Luciano