一个JSP文件看不到另一个

时间:2012-08-07 18:17:59

标签: java html jsp web-applications servlets

我在从一个JSP文件转发到另一个JSP文件时遇到了一些问题。

一开始我在adminSuccess.jsp,我想转到adminPage.jsp

已更新 - 以下是项目的层次结构树:

enter image description here

这是 adminSuccess.jsp

的代码
<!DOCTYPE html>
<html>
<head><title>System Administrator Page</title>
<link rel="stylesheet"
      href="./css/styles.css"
      type="text/css"/>
</head>
<body>


<h1>Hello ${name.firstName} ${name.lastName} , You've logged in successfully!</h1>
<h1>
Please choose one of the following options
</h1>



<fieldset>
  <legend>Add a new manager to the bank system</legend>
  <form action="adminAdds1"> 
    <a href="results/adminAddNewManager.jsp">Press here to continue</a>
  </form>
</fieldset>

<fieldset>
  <legend>Add a new employee to the bank system</legend>
  <form action="adminAdds2"> 
    <a href="results/adminAddNewEmployee.jsp">Press here to continue</a>
  </form>
</fieldset>

</body></html>

OUT:

HTTP Status 404 - /WebBank/results/adminAddNewManager.jsp

--------------------------------------------------------------------------------

type Status report

message /WebBank/results/adminAddNewManager.jsp

description The requested resource (/WebBank/results/adminAddNewManager.jsp) is not available.

显然,一个jsp看不到另一个,所以如何解决这个问题,而不需要从jsp文件中取出一个jsp文件,因为它需要更改很多其他代码。

问候

3 个答案:

答案 0 :(得分:3)

如果要访问需要从servlet或JSP转发请求的资源,WEB-INF下的资源不是可公开访问的资源

request.getRequestDispatcher("/WEB-INF/results/adminPage.jsp").forward(request, response);

答案 1 :(得分:2)

将JSP文件移出WEB-INF。

问题不在于一个JSP文件无法“看到”另一个 - 您有一个链接包含无法通过Web浏览器直接访问的资源(即JSP文件)的URL(作为WEB中的资源)无法以这种方式访问​​INF。)

答案 2 :(得分:0)

你的代码中有好的工作和糟糕的工作。

您将JSP放在/WEB-INF/中,这在Model-2应用程序中是好事,它阻止了对JSP的直接访问。

但是你试图从另一个视图访问JSP而不访问Servlet,这不是那么好,而且它是Model-1(不适合大型应用程序)。