2011-08-27 107 views
4

main.jsp是這個目錄下的web應用程序的位置:爲什麼我找不到包含的JSP?

/WEB-INF/jsps/foo/section/main.jsp 

main.jsp包含下面一行代碼,試圖包括包含在mainInclude.jsp的代碼,在不同的目錄中找到:

<jsp:include page="/WEB-INF/jsps/foo/includes/mainInclude.jsp" /> 

然而,這會產生以下錯誤:

javax.servlet.ServletException: 
File '/WEB-INF/jsps/foo/includes/mainInclude.jsp' not found 

爲什麼沒有找到?我檢查了這個位置,它出現在它說的位置。

+1

仔細檢查 - 它應該工作!任何錯字,大寫,小寫等? – home

回答

-1
This should work <jsp:include page="/WEB-INF/jsps/foo/includes/mainInclude.jsp"/> 
  • 如果問題仍然存在,清理項目正常。

  • 檢查在eclipse的服務器設置中是否啓用自動發佈功能。

  • 可以使用項目的WAR文件在服務器中進行部署,以檢查Eclipse中是否存在任何問題。

    Get the WEB-INF folder path

2

一切都看起來不錯。如果你遇到這個錯誤,那麼它就意味着你在路徑中有一個錯字(區分大小寫!),或者文件實際上沒有被髮布/部署到服務器中,或者服務器實際上需要重新啓動。

如果您正在使用Eclipse/Tomcat進行開發,並且剛剛在Tomcat運行時添加了該文件,那麼您需要確保Tomcat配置爲在運行時發佈更改。爲了實現這一目標,雙擊Tomcat的在服務器視圖,頭部右側頂部的出版部分,並確保它的設置項如下:

enter image description here


這就是默認設置至絕不自動發佈

+0

我認爲這是默認設置。另外,我認爲當「發佈」它重新啓動服務器時,如果你「從不發佈」,資源仍然被複制,這取決於tomcat。但我不確定。 – Bozho

+0

取決於使用的服務器插件。但的確,Tomcat是一個非常貧窮的出版商。 Glassfish是好多了。 – BalusC

4

改變你的JSP包括這樣

<jsp:include page="../includes/mainInclude.jsp" /> 

這應該工作的標籤。檢查日食是否正在進入foo目錄,否則在那裏再放一個../

相關問題