Hola, tengo el siguiente error, pero no sé si estoy armando bien las clases. Tengo la clase ValidadorDeCredenciales:
package Controllers;
import java.sql.Connection; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement;
import Factory.ConnectionFactory;
public class ValidadorDeCredenciales { public Object[] ValidaCredencial()throws SQLException { String usuario = ""; String clave =""; Connection conn = new ConnectionFactory().recuperaConexion(); Statement statement = conn.createStatement(); ResultSet resultSet = statement.executeQuery("SELECT usuario, clave FROM usuarios" );
if (resultSet.next()) {
usuario = resultSet.getString("usuario");
clave = resultSet.getString("clave");
}
return new Object[]{usuario,clave};
}
Mi idea es que me devuelva el valor del usuario y la clave para comparar con las ingresadas por teclado por el usuario en la clase Login. Traté de recibir el Object[], pero me da error y ahora intento con convertir en Strin el Object y guardar el contenido en un String pero me da error
private void Login() throws SQLException {
// Object[] Usuario= null;
//Object[] Contraseña = null;
String Usuario = "";
String Contraseña = "";
Usuario = Arrays.toString(validar.ValidaCredencial());
Contraseña = Arrays.toString( validar.ValidaCredencial());
// Usuario[1] = validar.ValidaCredencial();
// Contraseña[2] = validar.ValidaCredencial();
String contrase=new String (txtContrasena.getPassword());
if(txtUsuario.getText().equals(Usuario) && contrase.equals(Contraseña)){
MenuUsuario menu = new MenuUsuario();
menu.setVisible(true);
dispose();
}else {
JOptionPane.showMessageDialog(this, "Usuario o Contraseña no válidos");
}
}
} EL ERROR ES: Cannot invoke "Controllers.ValidadorDeCredenciales.ValidaCredencial()" because "this.validar" is null