2012-08-08 83 views
1

我有一些問題,轉發和在JSP文件拒絕即使我轉發轉發:JSP和servlet不響應轉發

的index.html:

我從這裏開始
<!DOCTYPE html> 
<html> 
<head><title>Bank application</title> 
<link rel="stylesheet" 
     href="./css/styles.css" 
     type="text/css"/> 
</head> 
<body> 
<table class="title"> 
    <tr><th>Web Bank application</th></tr> 
</table> 

<br/> 
<fieldset> 
    <legend>Login Page - please enter your Username and Password</legend> 
    <form action="loginPage"> 
    Username: <input type="text" name="username"><br> 
    Password : <input type="text" name="password"><br> 
    <input type="submit" value="Login"> 
    </form> 
</fieldset> 

<br/> 
<br/> 
<br/> 
<br/> 
<br/><br/><br/><br/><br/><br/> 
</body></html> 

與屏幕: enter image description here

然後我移動到JSP文件 - adminPage.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="WEB-INF/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="WEB-INF/results/adminAddNewEmployee.jsp">Press here to continue</a> 
    </form> 
</fieldset> 

</body></html> 

與屏幕:

enter image description here

但是當我點擊任一兩個選項之一,並移動到adminAddNewManager.jspadminAddNewEmployee.jsp,我得到這個,一遍又一遍,即使這兩個文件位於的adminPage.jsp同一文件夾:

HTTP Status 404 - 

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

type Status report 

message 

description The requested resource() is not available. 


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

Apache Tomcat/7.0.28 

在項目樹:

enter image description here

我該如何解決這個問題?我知道WEB-INF需要一些轉發,但我在哪裏轉發?在JSP中?

但請注意,我使用href它仍然失敗。

問候

編輯:

在adminPage.jsp補充說明的是:

<fieldset> 
    <legend>Add a new manager to the bank system</legend> 
    <form action="adminAdds1"> 
    <a href="src/servlets/Admin1">Press here to continue</a> 
    </form> 
</fieldset> 

並創建了一個新的servlet Admin1.java

package servlets; 

import java.io.IOException; 
import javax.servlet.ServletException; 
import javax.servlet.annotation.WebServlet; 
import javax.servlet.http.HttpServlet; 
import javax.servlet.http.HttpServletRequest; 
import javax.servlet.http.HttpServletResponse; 


    @WebServlet("/adminAdds1") 
    public class Admin1 extends HttpServlet { 
     private static final long serialVersionUID = 1L; 

     protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException 
     { 
      request.getRequestDispatcher("/WEB-INF/results/adminPage.jsp").forward(request, response); 
     } 

    } 

但是當我運行所有的事情我再次T:

HTTP Status 404 - /WebBank/src/servlets/Admin1 

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

type Status report 

message /WebBank/src/servlets/Admin1 

description The requested resource (/WebBank/src/servlets/Admin1) is not available. 


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

Apache Tomcat/7.0.28 

回答

4

WEB-INF中的文件不能直接從客戶端訪問。

一種方式將改變

<a href="SomeServletmapping"> 

內SomeServlet get方法做​​

request.getDispatacher(yourJSP).forward(); 

方式二:

move those JSPs outside the WEB-INF folder. 
+0

我在最後更新了帖子,請看看。謝謝 。 – 2012-08-08 03:53:03

+0

url應該是/ src/servlets/Admin1而不是src/servlets/Admin1。觀察引導斜槓 – kosa 2012-08-08 03:54:10

+0

我得到同樣的結果:'type Status report message/src/servlets/Admin1 description請求的資源(/ src/servlets/Admin1)不可用。 ' – 2012-08-08 03:56:22

1

採取這裏

<a href="WEB-INF/results/adminAddNewEmployee.jsp">Press here to continue</a> 

看看根據規格沒有什麼是訪問(directlyWEB-INF文件夾內。

它可以是可能的話,使用

<%@ include file="WEB-INF/path/to/expected.jsp" %> 

或者使用要求dispather或使用框架喜歡Spring指派給JSP做!

+0

了''包括不工作,我已經嘗試過,並且頁面被附加到t他的頁面,他們被合併在JSP文件中,但它仍然崩潰。 – 2012-08-08 03:37:04

+0

我剛剛再次測試以確保。並很好地工作。 – Kowser 2012-08-08 04:03:58