2016-07-15 33 views
1

我有一個部署在Tomcat 8服務器上的java rest服務,這個Tomcat 8安裝在Ubuntu服務器上。tomcat 8使用tomcat位於webapps上的訪問映像

我的Java REST Web服務的工作是,它保存圖像到以下位置

/opt/tomcat/webapps/TestWebService/WEB-INF/image/xyz.image 

圖像被成功救上上述地點

但我想通過URL來訪問這些圖片像

http://192.168.1.185:8080/TestWebService/WEB-INF/image/xyz.image

所以,我怎麼能做到這一點?

我正在使用Tomcat 8和Java。

+0

訪問你寫一個servlet,讀取數據的字節流。您只需在html img元素中使用servlet URL即可。類似於[從數據庫讀取img數據的這個答案](http://stackoverflow.com/a/2341322/744133)。 – YoYo

+1

另一種方法是將'server.xml'修改爲[以另一個答案爲例](http://stackoverflow.com/a/1812356/744133),以便在Web應用程序的上下文中包含圖像路徑。 – YoYo

+0

請勿暴露WEB-INF文件夾的內容。將圖像放置在資源文件夾或Web應用程序本身內的其他文件夾中。 – ManoDestra

回答

1

的Java Web容器的規範不允許實現者服務WEB-INF文件夾內的文件。如果您希望Tomcat提供圖像內容,請將文件放在WEB-INF文件夾之外。

/opt/tomcat/webapps/TestWebService/image/xyz.image 

您可以通過

http://192.168.1.185:8080/TestWebService/image/xyz.image 
+0

我更改了我的代碼併成功創建了圖像「/opt/tomcat/webapps/TestWebService/images/20160718195340.png」,但是當我訪問「http://192.168.1.185:8080/TestWebService/images/20160718195340.png」頁面爲空白。 – user3441151