2011-05-16 68 views
0

我怎樣才能改變正常鏈接<a href="listNotes.jsp">List all entries</a> 在JSP改變A HREF向前方法

到轉發方法forward("listNotes.jsp", request, response);

protected void forward(String JSPFileName, HttpServletRequest request, HttpServletResponse response) 
     throws ServletException, IOException { 
    request.getRequestDispatcher(JSPFileName).forward(request, response); 
} 

使用表單的某種方式?

+1

服務器端轉發與鏈接無關。你只是想'href'導致一個servlet,而不是一個JSP? – 2011-05-16 03:14:45

回答

0

只是讓鏈接URL servlet的

如的URL模式相匹配

<a href="forward/listnotes.jsp"> 

與被映射在/forward/*的URL模式,確實在doGet()方法如下工作一個servlet,假設你想隱藏的JSP文件中/WEB-INF文件夾,以防止直接訪問:

request.getRequestDispatcher("/WEB-INF" + request.getPathInfo()).forward(request, response); 
0

您可以定義一個FORM並將您的href標籤放在裏面,並將標籤連接到表單提交。在你的表單動作中,將它指向一個servlet。 (實際上,你甚至可以直接將你的href指向你的servlet)在servlet的doPost或doGet方法中,你可以調用forward方法。

所以代碼看起來像

FORM ACTION = 「/ MyForwardServlet」

A HREF = 「#」 行動= 「/ MyForwardServlet」

而在你MyFOrwardServlet.doPost

doPost(HttpServletRequest請求,HttpServletResponse響應){

//調用您的轉發方法或將該代碼內聯在此處。 }