我在WEB-INF& amp;创建了一个名为jsp的文件夹。将所有.jsp文件放在此文件夹中。 我更改了web.xml
它正在给予HTTP Status 404 /JasperPjt/jsp/Login.jsp Not found
。
请帮帮我。
答案 0 :(得分:3)
将JSP文件放在WEB-INF目录中的主要目的是它只能从服务器访问,而不能从客户端访问。(客户端将无法知道文件的确切URL)。
如果您尝试调用该文件(WEB-INF中的文件),服务器将返回HTTP 404。
只需调用servlet,然后就可以调用该JSP文件,如:
request.getRequestDispatcher("/WEB-INF/TargetJspFile.jsp").forward(request, response);
答案 1 :(得分:0)
默认情况下,您将无法访问WEB-INF中的文件。通常,所有jsps和其他UI内容都应该在应用程序根目录下和WEB-INF外部进行组织。可能你可以MyApp/pages
分别包含你的jsps和MyApp/WEB-INF
。
答案 2 :(得分:0)
您无法访问WEB-INF文件夹下的.jps文件,您可以访问Webcontent文件夹下的.jsp及其所有UI和其他UI相关文件的根文件夹。
如果您将它们分开,那么您需要从您可以访问的路径获取conetxt路径。
实际结构是:
HelloWorld
|
---->src
|
---->wecontent
|
----->WEB-INF
|
----->index.jsp
如果你分开
HelloWorld
|
---->src
|
---->wecontent
|
----->WEB-INF
|
----->jsps
|
|---> login.jsp
|---> welcome.jsp
就像现在这样你需要在jsp
中得到这样的结果<% String path = request.getContextPath(); %>
<a href="<%= path %>/jps/welcome.jsp">Wecome</a>
答案 3 :(得分:-1)
您无法直接访问WEB-INF文件夹中的文件。您需要重定向或转发请求。
如果您正在重定向或转发然后收到此错误,
/JasperPjt/WEB-INF/jsp/Login.jsp
或者我认为
/WEB-INF/jsp/Login.jsp
或WEB-INF/jsp/Login.jsp
这也应该有用。