I have following program can any one help me to find out wat is te error in it, it is login successfully, but on login failed it is not redirect to the loginfom.jsp page,
LoginForm.jsp file
<%@taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql"%>
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Login Page </title>
</head>
<body>
<%=request.getAttribute("errorMessage")%>
<form action="LoginAction" method="POST">
<table border="0">
<tr>
<td>User ID</td>
<td><input type="text" name="uid" /></td></tr>
<tr>
<td>Password</td>
<td> <input type="password" name="psw" /></td></tr>
<tr> <td colspan="2"><input type="submit" value="Log Me !" />
</td></tr>
</table>
</form>
</body>
</html>
LoginAction.java
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
try {
String uid, psw; // creating local variables for storing data which are taken from Form Fields.
uid = request.getParameter("uid"); // getting data from Form Field using Fileld name.
psw = request.getParameter("psw");
Class.forName("com.mysql.jdbc.Driver"); // creating database connection
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/user", "root", "nbuser"); //loading
jdbc Drivers
String q = "select * from user where user='" + uid + "' AND password='" + psw + "'"; // writing SQL Query
java.sql.Statement st = con.createStatement();
ResultSet rs = st.executeQuery(q); // executing SQL Query
String dpsw, duid; // creating local variables for storing data which are taken from Form databse.
while (rs.next()) {
duid = rs.getString(1);
dpsw = rs.getString(2);
if(duid.equals(uid) && dpsw.equals(psw)) {
HttpSession s = request.getSession(); // Creating Session Object
s.setAttribute("suid", uid); // Creating Session Value
RequestDispatcher rd=request.getRequestDispatcher("homepage.jsp");
request.setAttribute("uid", uid);
rd.forward(request, response);
}
else if(!(duid.equals(uid) && dpsw.equals(psw))){
request.setAttribute("errorMessage", "Invalid username or password");
RequestDispatcher rd=request.getRequestDispatcher("LoginForm.jsp");
rd.forward(request, response);
}
}
} catch (Exception e) {
out.print(e);
} finally {
out.close();
}
}