我正在使用eclipse和tomcat進行開發。 似乎用戶只能訪問WebContent
文件夾中的文件。
現在我需要在servlet中動態創建一個文件,但是我怎樣才能獲得WebContent
文件夾的真實路徑?
我試過getServletContext().getRealPath("")
,但它返回日食工作區的道路,我的項目不是路徑,它是這樣的D:\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\
,
而我想這樣的事情D:\git\Monitor\WebContent
任何人都知道該如何解決?〜非常感謝servlet如何創建用戶可以直接訪問的文件
0
A
回答
0
我以另一種方式找到了老師的幫助解決方案。 由於我無法獲得WebContent
的真實路徑,因此我可以修改server.xml
以爲本地路徑創建可讀的前端。此配置文件位於Servers
文件夾中。 server.xml
的底部是這樣的。
<Host appBase="webapps" autoDeploy="true" name="localhost" unpackWARs="true">
<Context docBase="Monitor" path="/Monitor" reloadable="true" source="org.eclipse.jst.jee.server:Monitor"/>
</Host>
而且我加了一個Context
節點,則是這樣的
<Host appBase="webapps" autoDeploy="true" name="localhost" unpackWARs="true">
<Context docBase="Monitor" path="/Monitor" reloadable="true" source="org.eclipse.jst.jee.server:Monitor"/>
<Context docBase="D:\environment\apache-tomcat-9.0.0.M21-dev\user\logs" path="/Monitor/logs" reloadable="true" debug="" crossContext="true"></Context>
</Host>
這樣一來,我可以在servlet文件寫入D:\environment\apache-tomcat-9.0.0.M21-dev\user\logs
,並在前端使用URL localhost:8080/Monitor/logs/fileName
獲取文件〜
0
你不能那樣做。 Web應用程序(WAR文件)可以部署爲未提取,即作爲壓縮存檔文件。
一般的解決方法是編寫一個servlet,即讓最終用戶下載生成的文件。通過這種方式,你可以將你的文件放在服務器FS的任何地方...
相關問題
- 1. 如何創建可以被任何用戶訪問的文件?
- 2. Joomla:如何在可以直接訪問的組件內創建文件?
- 3. 如何直接訪問文件夾和訪問Excel文件
- 4. 如何使用servlet創建csv文件?
- 5. 我可以訪問我用USB創建的文件嗎
- 6. UWP - 包中有文件夾,我可以訪問創建文件?
- 7. iPhone Sdk可以直接訪問SQL Server
- 8. 我可以訪問沒有直接
- 9. JSP EL可以直接訪問屬性
- 10. 直接用戶訪問的安全Tomcat Webapps文件夾
- 11. 直接訪問備用資源文件
- 12. 使腳本可以訪問文件,但不能訪問用戶
- 13. 如何使用servlet創建新帳戶
- 14. 如何創建和使用兩個頭文件。可以根據頁面訪問
- 15. 阻止用戶直接訪問jsp文件
- 16. 直接訪問較舊的MDB文件
- 17. C++中的直接文件訪問?
- 18. 防止直接訪問URL的文件?
- 19. 如何直接訪問g ++文本文件的某個部分?
- 20. 如何禁用直接訪問的iFrame
- 21. 如何防止用戶直接在網站根目錄訪問文件
- 22. 使用getSystemResource訪問servlet中的文件
- 23. 阻止用戶直接訪問頁面
- 24. 如何授予訪問權限以創建新文件?
- 25. 如何直接鏈接到我可以更改的文件?
- 26. 如何防止用戶直接訪問我的html頁面
- 27. 任何用戶都可以訪問%APPDATA%文件夾嗎
- 28. C#創建一個文件,以便只有創建該文件的用戶才能訪問它
- 29. java可以訪問使用CreateEvent創建的全局事件
- 30. 在Yii2中,我可以在視圖下創建文件並直接訪問它嗎?
但是'Webcontent'文件夾中的html文件可以通過像'http:// localhost:8080/Monitor/html/index.html'這樣的url訪問。 – disinuo
所以我認爲關鍵問題是獲取'WebContent'的真實路徑,以便servlet可以向其寫入文件。 – disinuo
Eclipse的'WebContent'成爲WAR存檔的根。你不能寫信給那裏......設置一個配置屬性,它包含一個安全可寫的路徑來存儲你的文件。這取決於你的服務器的環境.... –