Problem med login
Hej Eksperter,Jeg har et lille problem med en servlet jeg bruger til login. Sagen er den at hvis man skriver et forkert brugernavn eller password og så prøver igen, så får jeg en nullpointerexception. Hvad gør jeg forkert?
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.sql.*;
import util.*;
public class Login extends HttpServlet
{
/**
* Handle the HTTP GET method by building a simple web page.
*/
public void doPost (HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException
{
PrintWriter out;
String title = "Log in";
// set content type and other response header fields first
response.setContentType("text/html");
String res = request.getParameter ("navn");
String res2 = request.getParameter ("pass");
// then write the data of the response
out = response.getWriter();
Databaseforbindelsemysql d = new Databaseforbindelsemysql("jdbc:mysql://URL/DB?user=USER&password=PASS","org.gjt.mm.mysql.Driver");
try {
out.println("<HTML><HEAD><TITLE>");
out.println(title);
out.println("</TITLE>");
out.println("</HEAD>");
ResultSet rs = d.select("SELECT * FROM users");
boolean result=false;
while(rs.next()) {
String navn = rs.getString(2);
String pass = rs.getString(3);
if(res.equals(navn) && res2.equals(pass))
{
result=true;
HttpSession session = request.getSession(true);
String SessionIndhold = res;
session.setAttribute("brugernavn", SessionIndhold);
Variabler va = new Variabler();
va.setNavn(res);
va.setPassword(res2);
// va.setNavfarve();
session.setAttribute("navn",va);
session.setAttribute("password",va);
// session.setAttribute("navfarve",va);
System.out.println(session);
}
}
if(result) {
out.println("<body onload='document.send.submit();');>");
out.println("<form name='send' action='Editpage' method='post'>");
out.println("<input type='hidden' name='page' value='start'>");
out.println("</form>");
out.println("</body></html>");
}
else if(!result){
out.println("<body>");
out.println("<form action='/mortallovetest/adm' method='get'>");
out.println("<center><h1>Wrong username or password</h1>");
out.println("<input type='submit' value='Try again'>");
out.println("</center></form>");
out.println("</body></html>");
}
} catch (SQLException s) {
out.println("<h3>SQL fejl: " + s.toString() + " "
+ s.getErrorCode() + " " + s.getSQLState() + "</h3>");
}
out.close();
d.close();
}
public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException
{
}
}
