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

conexion Mysql

Estas en el tema de conexion Mysql en el foro de Java en Foros del Web. Tengo un problema a la hora de entrar a mi programa me manda un error de excepcion e leido y se que es por un ...
  #1 (permalink)  
Antiguo 25/02/2013, 14:54
 
Fecha de Ingreso: febrero-2013
Ubicación: Puebla
Mensajes: 4
Antigüedad: 11 años, 2 meses
Puntos: 0
conexion Mysql

Tengo un problema a la hora de entrar a mi programa me manda un error de excepcion e leido y se que es por un valor nulo sin embargo e intentado y no e logrado componerlo ojala puedan ayudarme dejo mi codigo

codigo de conexion:

package sistemaarco;

/**
*
* @author warner
*/
import java.sql.*;
import javax.swing.JOptionPane;
public class Conexion {
public String bd = "arco";
public String login = "root";
public String password = "root";
public String url = "jdbc:mysql://localhost/*"+bd;

private Connection conn = null;

public Conexion (){
try {
Class.forName("com.mysql.jdbc.Driver");
conn = DriverManager.getConnection( this.url, this.login , this.password );
if (conn!=null){
JOptionPane.showMessageDialog(null,"conexion a base de datos" + this.bd +". listo");
}
}catch(SQLException e){
System.out.print(e);
}catch (ClassNotFoundException e){
//System.out.print(e);
}

}
public Connection getConnection (){
return this.conn;
}

}

codigo de mi boton aceptar:

private void aceptarActionPerformed(java.awt.event.ActionEvent evt) {
//int registros = 0;
try {PreparedStatement pstmt = conn.getConnection().prepareStatement("SELECT"+ "nombre,contrasena"+"FROM usuario");
ResultSet res = pstmt.executeQuery();
int i =0;
String estusuario = null;
String estcontrasena = null;
while (res.next()){
estusuario = res.getString("usuario");
estcontrasena = res.getString("contrasena");
}
if(estusuario.equals(Usuario.getText())&& estcontrasena.equals(contraseña.getText())){
MenuPrincipal H1 = new MenuPrincipal ();
Escritorio.add (H1);
H1.show();
}else {
JOptionPane.showMessageDialog(this, "Datos Incorrectos");
}
}catch (SQLException e){

}


}
  #2 (permalink)  
Antiguo 25/02/2013, 15:03
 
Fecha de Ingreso: julio-2011
Ubicación: Santiago, Chile.
Mensajes: 95
Antigüedad: 12 años, 9 meses
Puntos: 4
Respuesta: conexion Mysql

Para ayudarte mejor creo que debieses poner textual el mensaje de error...
saludos :)
  #3 (permalink)  
Antiguo 25/02/2013, 15:08
 
Fecha de Ingreso: marzo-2011
Mensajes: 342
Antigüedad: 13 años, 1 mes
Puntos: 97
Respuesta: conexion Mysql

Como te dijeron es mejor si ponés el error textual, hay un valor nulo, para saber cuál es es mejor correr el programa en modo debug hasta que se "quiebre",
  #4 (permalink)  
Antiguo 25/02/2013, 20:01
 
Fecha de Ingreso: febrero-2013
Ubicación: Puebla
Mensajes: 4
Antigüedad: 11 años, 2 meses
Puntos: 0
Respuesta: conexion Mysql

este es mi error:

Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at sistemaarco.Ventana1.aceptarActionPerformed(Ventan a1.java:122)
at sistemaarco.Ventana1.access$200(Ventana1.java:14)
at sistemaarco.Ventana1$3.actionPerformed(Ventana1.ja va:76)
at javax.swing.AbstractButton.fireActionPerformed(Abs tractButton.java:2018)
at javax.swing.AbstractButton$Handler.actionPerformed (AbstractButton.java:2341)
at javax.swing.DefaultButtonModel.fireActionPerformed (DefaultButtonModel.java:402)
at javax.swing.DefaultButtonModel.setPressed(DefaultB uttonModel.java:259)
at javax.swing.plaf.basic.BasicButtonListener.mouseRe leased(BasicButtonListener.java:252)
at java.awt.Component.processMouseEvent(Component.jav a:6505)
at javax.swing.JComponent.processMouseEvent(JComponen t.java:3321)
at java.awt.Component.processEvent(Component.java:627 0)
at java.awt.Container.processEvent(Container.java:222 9)
at java.awt.Component.dispatchEventImpl(Component.jav a:4861)
at java.awt.Container.dispatchEventImpl(Container.jav a:2287)
at java.awt.Component.dispatchEvent(Component.java:46 87)
at java.awt.LightweightDispatcher.retargetMouseEvent( Container.java:4832)
at java.awt.LightweightDispatcher.processMouseEvent(C ontainer.java:4492)
at java.awt.LightweightDispatcher.dispatchEvent(Conta iner.java:4422)
at java.awt.Container.dispatchEventImpl(Container.jav a:2273)
at java.awt.Window.dispatchEventImpl(Window.java:2719 )
at java.awt.Component.dispatchEvent(Component.java:46 87)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.j ava:723)
at java.awt.EventQueue.access$200(EventQueue.java:103 )
at java.awt.EventQueue$3.run(EventQueue.java:682)
at java.awt.EventQueue$3.run(EventQueue.java:680)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPri vilege(ProtectionDomain.java:76)
at java.security.ProtectionDomain$1.doIntersectionPri vilege(ProtectionDomain.java:87)
at java.awt.EventQueue$4.run(EventQueue.java:696)
at java.awt.EventQueue$4.run(EventQueue.java:694)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPri vilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java: 693)
at java.awt.EventDispatchThread.pumpOneEventForFilter s(EventDispatchThread.java:242)
at java.awt.EventDispatchThread.pumpEventsForFilter(E ventDispatchThread.java:161)
at java.awt.EventDispatchThread.pumpEventsForHierarch y(EventDispatchThread.java:150)
at java.awt.EventDispatchThread.pumpEvents(EventDispa tchThread.java:146)
at java.awt.EventDispatchThread.pumpEvents(EventDispa tchThread.java:138)
at java.awt.EventDispatchThread.run(EventDispatchThre ad.java:91)
BUILD SUCCESSFUL (total time: 19 seconds)
  #5 (permalink)  
Antiguo 26/02/2013, 11:06
Avatar de rgf1987  
Fecha de Ingreso: diciembre-2012
Ubicación: Asturias
Mensajes: 269
Antigüedad: 11 años, 4 meses
Puntos: 22
Respuesta: conexion Mysql

¿Has comprobado si el ResultSet tiene elementos? Porque sino los tienes las variables que utilizadas despues estarán a Null y probablemente sean las culpables del nullpointerexception
  #6 (permalink)  
Antiguo 26/02/2013, 22:32
 
Fecha de Ingreso: marzo-2011
Mensajes: 342
Antigüedad: 13 años, 1 mes
Puntos: 97
Respuesta: conexion Mysql

Lo que te conviene ahora es ejecutar en modo debug para seguir la ejecución del programa, si buscás en internet vas a encontrar la manera de hacerlo, es muy simple, cuando el programa "se quiebre" será en el resultado null que te está dando problemas, por ejemplo, una posibilidad es que sea acá:

Cita:
String estusuario = null;
String estcontrasena = null;
while (res.next()){
estusuario = res.getString("usuario"); ---> tal vez esto está mal
estcontrasena = res.getString("contrasena"); ---> tal vez esto está mal
... como está mal por "x" motivos (ej.: el campo de tu tabla no se llama así), queda el null por defecto, solo es una posibilidad más, puede haber otras, por eso es necesario el debug, saludos

Última edición por sebastopols; 26/02/2013 a las 22:34 Razón: Edito: es como dijo también "rgf1987"
  #7 (permalink)  
Antiguo 27/02/2013, 06:07
Avatar de rgf1987  
Fecha de Ingreso: diciembre-2012
Ubicación: Asturias
Mensajes: 269
Antigüedad: 11 años, 4 meses
Puntos: 22
Respuesta: conexion Mysql

Yo apostaría a que el fallo está aqui...

Código Java:
Ver original
  1. if(estusuario.equals(Usuario.getText())&& estcontrasena.equals(contraseña.getText())){

La búsqueda no debe generar resultados, por lo tanto las variables estusuario y estcontrasena no tienen valor por lo que estan a null y de ahi el NullPointerException

Etiquetas: netbeans
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 16:36.