7
這應該是相當容易的,但由於某些原因,我嘗試的幾乎所有事情似乎都會在我將它連接到Web瀏覽器時發出「未找到」錯誤。使用Jetty從jarfile中提供靜態內容?
我有一個單一的靜態上下文,對於ResourceBase我有'file:jar:/ path/to/myjar!/。'...任何想法我失蹤了?
這應該是相當容易的,但由於某些原因,我嘗試的幾乎所有事情似乎都會在我將它連接到Web瀏覽器時發出「未找到」錯誤。使用Jetty從jarfile中提供靜態內容?
我有一個單一的靜態上下文,對於ResourceBase我有'file:jar:/ path/to/myjar!/。'...任何想法我失蹤了?
嘗試從這樣的類加載器加載資源,
ClassLoader classLoader =
Thread.currentThread().getContextClassLoader();
if (classLoader == null) {
classLoader = getClass().getClassLoader();
}
InputStream stream = classLoader.getResourceAsStream(name);
你的方法假設絕對路徑,並在服務器部署也未必是真實的。該jar可以在另一個JAR(WAR)或一個臨時目錄中。
我可以隨時更改路徑,我只是看到我是否可以完全按照這種方式工作,而不是從JAR加載servlet - 只是靜態的.html文件。 – 2009-08-08 23:15:17
我不認爲你的語法是正確的。它應該是: jar:file:/path/to/my.jar!/ package/file 如果這是在Windows上,您可能還需要驅動器盤符。 – 2009-08-08 23:37:59