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

No se ejecuta el SP

Estas en el tema de No se ejecuta el SP en el foro de Java en Foros del Web. Saludos. Tengo el siguiente problema que me tiene vuelto loco. Tengo un método que usa un hilo para conectarse a una BD, el cual funciona ...
  #1 (permalink)  
Antiguo 20/11/2012, 15:01
Avatar de Cero_Cool  
Fecha de Ingreso: abril-2007
Ubicación: Chile
Mensajes: 113
Antigüedad: 17 años
Puntos: 6
No se ejecuta el SP

Saludos. Tengo el siguiente problema que me tiene vuelto loco.
Tengo un método que usa un hilo para conectarse a una BD, el cual funciona perfecto, este es el código:

Primero los atributos de clase y el constructor

Código PHP:
public class Acciones_Login {
    
// Atributos
    
private Login login;
    private 
GestionMySQL conexion;
    private 
Conectando ventana_conectando;
    private 
Servicio_Login servicio_login;
    
    
//Constructor
    
public Acciones_Login(Login loginGestionMySQL conexionConectando ventana_conectando){
        
this.login    login;
        
this.conexion conexion;
        
this.ventana_conectando ventana_conectando;
        
this.servicio_login = new Servicio_Login(getConexion());
    } 
Ahora el código del método. que llama al método que conecta con la bd y luego al método que ejecuta el SP.

Código PHP:
public void logueando(){ 
            
SwingWorker worker = new SwingWorker <Void Void>() {
            @
Override
            
protected Void doInBackground() {
               try {
                    
getConexion().conectar("localhost","bdcitas","root","pochocha");
                    } 
                catch (
SQLException ex
                    {
                    
JOptionPane.showMessageDialog(null"Ha fallado la conexión con el servidor \n" ex.getMessage(),"Error de conexión"0);
                    }
                catch (
ClassNotFoundException ex
                    {
                    
JOptionPane.showMessageDialog(null"No se encuentra el controlador de conexion\n" ex.getMessage(),"Error de conexión"0);    
                    }
                
finally 
                    

                    
destruye_ventanas(getVentanaConectando());
                    
getLogin().getBtnIngresar().setEnabled(true);
                    } 
               
                try {
                    
getServicio_Login().loginSp("cadena""cadena");
                    
System.out.println("asdasd");
                } catch (
SQLException ex) {
                    
System.out.println(ex.getMessage());
                }
                return 
null;
            }
        }; 
        
worker.execute();
        
    } 
Como pueden ver, después del primer try catch, comienza otro en el que se llama a una método loginSP que se supone llama a un sp para el proceso de login, este método se encuentra en otra clase que pongo a continuación. En esta clase, el contructor revicer un parametro de tipo GestionMySQL que es la clase que uso para procesar la conexion con la bd, luego asigno el valor de la variable conn de esa clase a la variable conexion de la clase actual para poder usarla en la definicion de SP

Código PHP:
public class Servicio_Login {
    private 
Connection conexion;
    
    public 
Servicio_Login(GestionMySQL conexion){
        
this.conexion conexion.getVarConn();
    }
    
    public 
void loginSp(String usuarioString contrasenathrows SQLException{
            
CallableStatement SP getConexion().prepareCall("call Logfin(?,?)");
            
// cargar parametros al SP
            
SP.setString("userx"usuario);
            
SP.setString("pass" contrasena);
            
// ejecutar el SP
            
SP.execute();
    }
    
    
//Acceso variables
    
public Connection getConexion(){
        return 
this.conexion;
    }


Esta es la clase que uso para conectar con la BD

Código PHP:
public class GestionMySQL   {
    private 
Connection conn;
    private 
PreparedStatement consulta;
    private 
ResultSet datos;
    
    
//Métodos  
    
public void conectar(String servidorString bdString usuarioString passwordthrows ClassNotFoundExceptionSQLException{
        Class.
forName("com.mysql.jdbc.Driver");
        
this.conn DriverManager.getConnection("jdbc:mysql://"+servidor+"/"+bdusuariopassword);
    }
    
    public 
void desconectar() throws SQLException{
        
this.consulta.close();
        
this.conn.close();
    }
    
    public 
void liberarDatos() throws SQLException{
        
this.datos.close();
    }

    
//Acceso a datos
    
public Connection getVarConn(){
        return 
this.conn;
    } 
Ahora, el problema esta en que al parecer el flujo no entra el a la llamada del SP , pero tampoco de da excepciones sql ni errores de sintaxis ni nada, simplemente que conecta a la bd y el resto pareciera omitirlo. He llegado a punto de intentar generar un error para obtener un mensaje pero nada. Por favor necesito de su ayuda que esto ya me supero XD.
  #2 (permalink)  
Antiguo 20/11/2012, 22:48
Avatar de Cero_Cool  
Fecha de Ingreso: abril-2007
Ubicación: Chile
Mensajes: 113
Antigüedad: 17 años
Puntos: 6
Respuesta: No se ejecuta el SP

Ok, no importa ya resolví mi problema, pero ahora no se como continuar esto, tengo el siguiente SP que sirve para un login con mysql, el sp conecta bien pero no se que debohacer ahora para obtener el resultado del sp y asi poder ver si encontro 1 o 0 filas y poder determinar si existe o no el usuario. Ayudapor favor.

Código PHP:
public void loginSp(String usuarioString contrasenathrows SQLException{
            
CallableStatement SP getConexion().getVarConn().prepareCall("call Login(?,?)");
            
// cargar parametros al SP
            
SP.setString(1usuario);
            
SP.setString(2contrasena);
            
// ejecutar el SP
            
SP.execute();
           
            
    } 

Etiquetas: clase, ejecuta, mysql, 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 02:55.