Ver Mensaje Individual
  #6 (permalink)  
Antiguo 11/09/2010, 12:17
peter_21
 
Fecha de Ingreso: mayo-2010
Mensajes: 71
Antigüedad: 14 años
Puntos: 1
Respuesta: llamar a objeto desde otra clase

Cita:
Iniciado por FiruzzZ Ver Mensaje
porque está saliendo una Exception (muy probablemente una NullPointerException o IndexOutOfBoundsException)

Código Java:
Ver original
  1. }catch(Exception e){
  2.              //ESTÁS IGNORANDO UNA EXCEPTION y RETORNANDO NULL
  3.             // mejor fijate porque está saltando una y arreglalo.. o TRATALA, pero no la ignores
  4.             e.printStackTrace(); // <--------------
  5.         }


No veo por ningún lado que controles QUE:
jTable1.getSelectedRow() > -1
Así que no sé como estás tan seguro de lo que decís..
Lee lo que dice la javadoc de este método y vas a ver
Yo hago la seleccion de la fila aquí:

Código:
private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {                                         
        seleccionado();
        dispose();
}

public Empresa seleccionado(){
        //Connection conexion = null;
        try{
        int idC = (Integer) jTable1.getValueAt(jTable1.getSelectedRow(), 0);
        String id = (String) jTable1.getValueAt(jTable1.getSelectedRow(), 1);
        String nombre = (String) jTable1.getValueAt(jTable1.getSelectedRow(), 2);
        String fecha = (String) jTable1.getValueAt(jTable1.getSelectedRow(), 3);
        String ciudad = (String) jTable1.getValueAt(jTable1.getSelectedRow(), 4);
        String ca = (String) jTable1.getValueAt(jTable1.getSelectedRow(), 5);
        int edad_minima = (Integer) jTable1.getValueAt(jTable1.getSelectedRow(), 6);
        int edad_maxima = (Integer) jTable1.getValueAt(jTable1.getSelectedRow(), 7);
        String sexo = (String) jTable1.getValueAt(jTable1.getSelectedRow(), 8);

        Empresa em = new Empresa(idC, id, nombre, fecha, ciudad, edad_minima, edad_maxima, sexo, ca, null);
        
        return em;

        }catch(Exception e){
            return null;
        }
}
Es que es dificil de explicar. Voy a intentar explicarlo bien.
A ver, yo tengo que insertar en una tabla de una bb.dd 2 datos que son clave primaria. Al ser clave primaria, no puedo insertar una y despues la otra, porque no puede haber una CP(clave primaria) null....el problema esta que los datos que tengo que insertar, estan, en una fila de un jtable de una ventana de mi aplicacion, y en OTRA JTABLE DE OTRA VENTANA DE LA MISMA APLICACION.

Entonces lo que quiero(INTENTO) hacer, es que al seleccionar la fila que ves en el metodo de arriba, guardarme el elemento en mi clase objeto, para luego, cuando seleccione la segunda fila del segundo jtable(cuyo codigo esta tambien en el primer mensaje de este hilo) hacer la inserccion recuperando el dato de mi objeto.

Por eso lo que intento hacer es guardarme la primera fila en Empresa EM, para luego desde la otra clase recuperarlo, desde el metodo
Código:
(private void jButton8ActionPerformed(java.awt.event.ActionEvent evt) {...}
Pero claro, cuando hago la llamada a la primera clase del primer jtable para recuperar el objeto, pues hago:
Código:
SeleccionarEm cogerEm = new SeleccionarEm(null, true);
em = cogerEm.seleccionado();
Y me dice null porque no hay nada seleccionado, pero se que no hay nada, pero lo que quiero es recuperar el EM


Como lo puedo hacer?

gracias