Foros del Web » Programación para mayores de 30 ;) » Java »

Error NullPointerException

Estas en el tema de Error NullPointerException en el foro de Java en Foros del Web. Hola, no entiendo porque me da error en este programita, :s, disculpen soy estudiante primer año de Analista Programador, soy newbie. Consultas Cita: package Modulos; ...
  #1 (permalink)  
Antiguo 22/10/2012, 09:30
 
Fecha de Ingreso: octubre-2012
Mensajes: 1
Antigüedad: 11 años, 6 meses
Puntos: 0
Pregunta Error NullPointerException

Hola, no entiendo porque me da error en este programita, :s, disculpen soy estudiante primer año de Analista Programador, soy newbie.


Consultas
Cita:
package Modulos;

import java.sql.*;
import javax.swing.JOptionPane;

/**
*
* @author Jaime
*/
public class Consultas {
//Llamamos al objeto con la variable con;
Conectar con = new Conectar();

//Creamos variables de conexion
Statement st = null;
ResultSet rs = null;
Connection conect = null;

Login lg = new Login();

public String Nombre;
public String Apellido;


public boolean Login(String Rut,String pwr)
{
int Login=0;
try{
conect=con.Conexion();
System.out.println("Conexion DB "+conect);
st=conect.createStatement();
rs=st.executeQuery("SELECT * FROM Usuario WHERE RUT="+Rut+"AND Password='"+pwr+"'");
while(rs.next()){
if(rs.getString(1)==null)
Login=0;
else{
Login=1;
Nombre = rs.getString("Nombre");
Apellido = rs.getString("Apellido");
System.out.println("AKI");
}
}
}catch(Exception ex){
JOptionPane.showMessageDialog(lg,"Error en Login "+ex);
}
if(Login==1)
return true;
else return false;
}
}
Login

Cita:
Consultas cns = new Consultas();
if(cns.Login(this.Rut.getText(),this.pwr.getText() )){
JOptionPane.showMessageDialog(rootPane,"Correcto") ;
}else{
JOptionPane.showMessageDialog(rootPane,"Incorrecto ");
}
Conectar

Cita:
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package Modulos;

import java.sql.Connection;
import java.sql.DriverManager;

/**
*
* @author Jaime
*/
public class Conectar
{
Connection conect = null;
public Connection Conexion()
{
try{
Class.forName("com.mysql.jdbc.Driver");
Connection conect = DriverManager.getConnection("jdbc:mysql://localhost:3306/Prueba_Software","root","123456");
//System.out.println("Exito Conexion DB");
}catch(Exception ex){
System.out.println("Error Conexion DB "+ex);
}
return conect;
}
}

El error si no me equivoco esta en La conexion, que llega NULL a Consultas, nose porque :S,

Gracias de antemanos.
  #2 (permalink)  
Antiguo 23/10/2012, 01:54
 
Fecha de Ingreso: agosto-2011
Ubicación: Madrid
Mensajes: 185
Antigüedad: 12 años, 8 meses
Puntos: 29
Respuesta: Error NullPointerException

Sería de más ayuda poner la traza del error para saber exactamente donde ha sido. Poca gente se va a animar a leer todo ese código sin "colorear".
  #3 (permalink)  
Antiguo 24/10/2012, 02:26
 
Fecha de Ingreso: octubre-2012
Mensajes: 11
Antigüedad: 11 años, 6 meses
Puntos: 0
Respuesta: Error NullPointerException

Tienes una clase que se llama "Login", una variable en la clase consultas que se llama "Login" y una función en esta misma clase que se llama "Login". Eso no es buena idea... deberías aclarar un poco esto.

Un ejemplo podría ser: la clase "Login" se queda igual, la variable "Login" de la clase consultas se podría llamar "valido" y la función "Login" de esta clase "loginFunction", por ejemplo
  #4 (permalink)  
Antiguo 25/10/2012, 13:27
Avatar de fahs82  
Fecha de Ingreso: abril-2012
Ubicación: guadalajara
Mensajes: 139
Antigüedad: 12 años
Puntos: 12
Respuesta: Error NullPointerException

yo pondria diferente la validacion en el caso despues de obtener el resultset

rs=st.executeQuery("SELECT * FROM Usuario WHERE RUT="+Rut+"AND Password='"+pwr+"'");
if(!rs.next() && rs.getRow() == 0){
Login=0;
}
else
{
Login=1;
}

asi verificas si estas obteniendo un resultsetvacio , en caso de que obtengas un resultset con datos asignas la variable aun asi seria mejor simplificaras tu codigo de la mejor manera

Etiquetas: nullpointerexception, programa, string
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:47.