2012-06-30 21 views
3

我有一個用Java + spring框架編寫的web應用程序。使用的應用服務器是tomcat。假設網絡應用程序名稱是「sample-webapp」。如果我創建下樣品的webapp /資源/ -LSpring框架和tomcat - 如何啓用以下符號鏈接到文件夾?

符號鏈接像這個 -

LS ... /樣品的webapp /資源/ TEMP-CSV定位 - >的/ tmp/CSV -location

這裏「temp-csv-location」是一個符號鏈接。

現在,如果我是指一個文件在這個目錄裏的一個jsp頁面,像

<a href="http://localhost:8080/sample-webapp/resources/temp-csv-location/test.csv">Click</a> 

它給了我一個404錯誤。我確認test.csv文件存在於/ tmp/csv-location /中。我也確認了權限。在普通的tomcat用法中,我們可以在context.xml中添加「allowLinking = true」。

有沒有辦法在春季框架中做到這一點?

回答

0

針對您的問題的另一種通用解決方案是編寫一個Servlet來處理所有請求以計算您的開始路徑,然後Servlet將通過解析其路徑來處理文件的提供。

有關設置的Servlet,你必須把這個在你的web.xml

<filter> 
    <filter-name>csvFileDownloadServlet</filter-name> 
    <filter-class>edu.sharif.resource.CSVFileDownloadServlet</filter-class> 
</filter> 
<filter-mapping> 
    <filter-name>csvFileDownloadServlet</filter-name> 
    <url-pattern>/resources/temp-csv-location/*</url-pattern> 
</filter-mapping> 

那麼你應該寫edu.sharif.resource.CSVFileDownloadServlet類。您可以通過一個簡單的搜索找到幾個實施對於這個問題,例如:

+0

請把它標記爲答案,如果它幫你! –

相關問題