Conexão Login/Senha

Quando tento compilar o sistema acusa esse erro:

org.apache.jasper.JasperException: An exception occurred processing JSP page /login.jsp at line 20

17:
18:
19:
20: if (v.verificarLogin(u) == true) { // True se login OK, False se login NOK
21: // usuario existe
22: session.setAttribute(“u”, u);
23: u.setLogado(true);

Alguém sabe me dizer o que está acontecendo.

essa parte do sistema está num método chamado verificarLogin que mostro a seguir:

public static boolean verificarLogin(UsuarioBean u) throws IOException
{
String strSQL = “”;
Statement stm;
UsuarioBean uBean;
String strLogin = u.getLogin();
String strSenha = u.getSenha();

uBean = new UsuarioBean();

try
{
    Connection conn = Conexao.getConnection(); //obtendo conexão
    stm = conn.createStatement();
    strSQL = "SELECT login, senha from usuario WHERE login = '" + strLogin +  "' AND senha = '"+ strSenha + "'" ;
    System.out.println(strSQL);
    ResultSet rs = stm.executeQuery(strSQL); //resultado de uma consulta (executeQuery) enviado para um objeto resultSet
    if (rs.next())
    {
      uBean.setLogado(true);
    }
    rs.close();
    stm.close();
}
catch (Exception e)
{
        System.out.println("teste" + e.getMessage());
}
return u.getLogado();

}

E a conexão está feita em outro método desta maneira:

public static Connection getConnection()
{
String url = “xxxxxxxxx”;
String user = “yyyyyyy”;
String password = “zzzzzzzz”;
if (m_Conexao == null)
{
try
{
Class.forName(“org.gjt.mm.mysql.Driver”);
m_Conexao = DriverManager.getConnection(url,user,password);
}
catch (Exception e)
{
e.printStackTrace();
}
}
return m_Conexao;
}
}

O que acham que está acontecendo?

um problema é que vc não deve ter inicializado sua variável logado do UsuarioBean vazia e como vc está retornando u.getLogado() em vez de uBean.getLogado() deve estar dando erro por isso…

Não sei se é assim sua class usuario mas se for seu boolean está vasio:

[code]public class UsuarioBean {

String login;
String senha;
private static boolean logado;

//get em set

}[/code]

no seu metodo

public static boolean verificarLogin(UsuarioBean u) throws IOException ... //vc faz if (rs.next()) { uBean.setLogado(true); } ... //e no seu result vc chama u que é o UsuarioBean que vc passou no metodo e ele pode estar vazio return u.getLogado();

u != de uBean certo?

ve primeiro isso depois printa o erro completo com o CODE do editor…rs

org.apache.jasper.JasperException: An exception occurred processing JSP page /login.jsp at line 20

aguardo

e uma dica de logica:

//isso
if (v.verificarLogin(u) == true) { // True se login OK, False se login NOK 
//pode ser feito assim tbm
if (v.verificarLogin(u)) // uma vez que ele só pode retornar true ou false 


// e isso 
 if (rs.next())
{
uBean.setLogado(true);
}
//pode ser feito assim tbm
 if (rs.next())
{
return true;
}
return false;

realmente o u não estava inicializado, inicializei e mudou o erro.

o erro é esse agora:

Exception report

message

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

org.apache.jasper.JasperException: java.lang.NullPointerException
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:541)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:435)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:390)

root cause

java.lang.NullPointerException
persistencia.UsuarioBD.verificarLogin(UsuarioBD.java:349)
org.apache.jsp.login_jsp._jspService(login_jsp.java:72)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:390)

note The full stack trace of the root cause is available in the Apache Tomcat/6.0.14 logs.

a unica coisa que posso te dizer variavel nula…
pode ser seus login senha que são String, pode ser seu objeto…
vc tem que verificar se ele são nulo
o local do erro esta aki…

persistencia.UsuarioBD.verificarLogin(UsuarioBD.java:349) 

boa sorte