Buenas,
El problema no es al cerrar el resulset.
Estás haciendo un extraño bucle aquí:
while(rset.next()){
logeado=1;
}
De tal manera que el resultset termina apuntando a un valor nulo tras recorrer todos los valores.
Luego intentas acceder a dicho resultset haciendo:
rset.getInt("idusuario")
Y es donde te falla.
(Lo habrías descubiero rápidamente si pintas el stack completo del error, que te indica la línea en la que ha fallado. En lugar de ex.getMessage... usa ex.printStackTrace(); )
Para corregir el error bastaria con eliminar ese bucle y cambiar un poco la condición:
Código Java:
Ver original
String sql
="SELECT * FROM usuarios WHERE usuario='"+nombre
+"' AND contrasena='"+pass
+"'"; rset=stmt.executeQuery(sql);
if(rset.next()){
session.setAttribute("usuario", "usuario");
session.setAttribute("idUsuario", rset.getInt("idusuario"));
out.println("<meta http-equiv='Refresh' content='1; url=../index.jsp' >");
}else{
out.println("<meta http-equiv='Refresh' content='1; url=../login.jsp' >");
}
rset.close();
stmt.close();
connection.close();
Un saludo