2014-08-30 3 views
1

내가 버튼을 클릭하면 다른 JSP 페이지로 리디렉션 할 위치에서의 login.jsp하지만 그것은 단지 서블릿 페이지에 얻고 거기에서 즉 CustomerLogin.jsp이버튼을 클릭하면 다른 JSP 페이지에서 서블릿을 통해 JSP 페이지로 리디렉션됩니까?

<form action="<%=request.getContextPath()%>/UserController" name="login" method="post"> 
<input type="hidden" name="action"> 
<table align="center"> 
    <tr><td>Username</td><td><input type="text" name="user"> </td></tr> 
    <tr><td>Password</td><td><input type="password" name="pwd"></td></tr> 
    <tr><td colspan="2"><input type="submit" value="Login"> </td></tr> 
</table> 
</form> 

서블릿이

코딩 다른 JSP 페이지로 리디렉션되지 않는다
String requestSource=request.getParameter("source"); 

    if(requestSource.equalsIgnoreCase("home")){ 
     System.out.println(requestSource); 
     response.sendRedirect("jsp/Login.jsp"); 
    } 
    else if(requestSource.equalsIgnoreCase("CustomerLogin")){ 
     System.out.println(requestSource); 
     response.sendRedirect("jsp/CustomerPage.jsp"); 
    } 
+0

정확히이 "소스"매개 변수는 어디에서 오는가? – kaqqao

+0

"source"매개 변수 서블릿에서 다른 페이지 소스의 다른 값에 따라 컨트롤러에서 내 페이지를 리디렉션하는 데 사용하고 있습니다. –

답변

0

<form>에는 source이라는 매개 변수가 필요합니다. 당신은 숨겨진이 매개 변수를 추가 할 수 있습니다 :

<form action="<%=request.getContextPath()%>/UserController" name="login" method="post"> 
    <!-- current content... --> 
    <input type="hidden" name="source "value="customerLogin" /> 
</form> 

는 그런 다음 requestSource 변수는이 매개 변수로 채워집니다.

여전히 좋은 방법이 아니므로 탐색을 지원하기 위해 숨겨진 필드를 사용해서는 안됩니다. 역할 (사용자 인증 프로세스에서 획득 한 것) 또는 다른 역할과 같은 특정 데이터를 통한 탐색을 정의하십시오.

관련 문제