2016-09-22 125 views
-1

我在服務器上部署了一個小項目(在共享主機上),我在那裏遇到問題,它無法看到包含的文件。從另一個jsp文件中包含jsp文件

所以,我有一個文件: public_html/test/index.jsp

具有代碼:

<jsp:include page="/WEB-INF/jsps/aaa.jsp"></jsp:include> 

和其他文件:public_html/WEB-INF/jsps/aaa.jsp

如果我的index.jsp訪問喜歡: www.mydomain.com/test/index.jsp我得到的錯誤:

HTTP Status 500 - javax.servlet.ServletException: File &quot;/WEB-INF/jsps/aaa.jsp&quot; not found 

問題是我不能從一個不同的目錄中包含一個文件!

在本地主機環境中,我開發項目的地方我沒有這個問題,但在服務器上我有它。

您知道爲什麼會發生這種情況?我該如何解決它?

回答

0

只是嘗試下面的代碼:

<jsp:include page="../WEB-INF/jsps/aaa.jsp"/> 

,而不是你的結束標籤寫的一個。 <jsp:xxx ..不應該有一個結束標籤..通常我建議你避免保存你的jsp文件在WEB-INF內,因爲這不是一個好習慣(我第一次看到)。正如我之前建議您可以隨時提及整個網址:

<jsp:include page="http://www.domain.com/public_html/WEB-INF/jsps/aaa.jsp"/> 

我希望這次對您有用。

+0

第一個代碼不起作用,並且從我的意見上來說是正常的不起作用,因爲就像從目錄中包含一個文件:/test/jsps/aaa.jsp但文件不存在!,在WEB中-INF/jsps/aaa.jsp 即使從第二個代碼我也會得到錯誤 – fabby

+0

您能編輯您的問題並顯示兩個文件的路徑嗎? ,我不得不編寫示例url,因爲我不知道路徑。 – MrMisery

+0

我編輯並解釋了更好 – fabby