Problema con jTable

Iniciado por llAudioslavell, 27 Mayo 2015, 23:30 PM

0 Miembros y 1 Visitante están viendo este tema.

llAudioslavell

Hola a todos !! estoy haciendo una busqueda a una tabla Alumnos por 2 criterior: Dni y Apellidos... la busqueda me la hace normal !! no hay problema en eso, el problema es cuando doy click al resultado mostrando en el jTable y nose porque....
Código (java) [Seleccionar]
// Este metodo es para mostrar a todos los alumnos en el jTable

   void mostrarAlumnos() {
       tbAlumnos.setRowCount(0);
       metodosAlumnos.alumnos= metodosAlumnos.loadAlumno();
       for (AlumnoEntity obj : metodosAlumnos.alumnos) {
           Object[] vector = { obj.getApellidos(), obj.getNombres(),obj.getDni()};
           tbAlumnos.addRow(vector);
       }
       metodosAlumnos.alumnos.clear();
   }

// Este para hacer la consulta y llenarlo al jTable

   void consultarAlumno(int criterio, String texto) throws SQLException {
       
       if (texto.equals("")) {
           tbAlumnos.setRowCount(0);
           JOptionPane.showMessageDialog(null, "Ingrese el texto a buscar.");
       } else {
          metodosAlumnos.alumnos= metodosAlumnos.consultarAlumno(criterio, texto);
           for (AlumnoEntity obj: metodosAlumnos.alumnos){
               Object[] vector = { obj.getNombres(), obj.getApellidos(),obj.getDni()};
               tbAlumnos.addRow(vector);
           }
       }
       metodosAlumnos.alumnos.clear();
   }

// Esto va en el boton "buscar"
       try {
           // TODO add your handling code here:
           consultarAlumno(criterio, String.valueOf(txtTexto.getText()));
       } catch (SQLException ex) {
           Logger.getLogger(frmIConsultar_Alumno.class.getName()).log(Level.SEVERE, null, ex);
       }

Cuando doy click al jTable me imprime este error :

Exception in thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException: 4 >= 1
at java.util.Vector.elementAt(Vector.java:474)
at javax.swing.table.DefaultTableModel.setValueAt(DefaultTableModel.java:664)
at javax.swing.JTable.setValueAt(JTable.java:2741)
at javax.swing.JTable.editingStopped(JTable.java:4723)
at javax.swing.AbstractCellEditor.fireEditingStopped(AbstractCellEditor.java:141)
at javax.swing.DefaultCellEditor$EditorDelegate.stopCellEditing(DefaultCellEditor.java:368)
at javax.swing.DefaultCellEditor.stopCellEditing(DefaultCellEditor.java:233)
at javax.swing.JTable$GenericEditor.stopCellEditing(JTable.java:5467)
at javax.swing.plaf.basic.BasicTableUI$Handler.mousePressed(BasicTableUI.java:1010)
at java.awt.AWTEventMulticaster.mousePressed(AWTEventMulticaster.java:280)
at java.awt.Component.processMouseEvent(Component.java:6522)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
at java.awt.Component.processEvent(Component.java:6290)
at java.awt.Container.processEvent(Container.java:2234)
at java.awt.Component.dispatchEventImpl(Component.java:4881)
at java.awt.Container.dispatchEventImpl(Container.java:2292)
at java.awt.Component.dispatchEvent(Component.java:4703)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4898)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4530)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4462)
at java.awt.Container.dispatchEventImpl(Container.java:2278)
at java.awt.Window.dispatchEventImpl(Window.java:2750)
at java.awt.Component.dispatchEvent(Component.java:4703)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
at java.awt.EventQueue.access$500(EventQueue.java:97)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.awt.EventQueue$3.run(EventQueue.java:703)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:75)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:86)
at java.awt.EventQueue$4.run(EventQueue.java:731)
at java.awt.EventQueue$4.run(EventQueue.java:729)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:75)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)



Como les digo, la busqueda lo hace sin problemas !!  He buscando info en google y entendi que es por problemas del indice del vector, que estoy intentando agregar un indice que no existe o algo asi pero no entiendo !! el vector si se llena, los registros si aparecen  entonces cual es el problema :( :( :( auxilio !!  estoy estrezado por este error :( :( :(

Mod: Los codigos deben ir en etiquetas GeSHi y los reportes preferiblemente en etiquetas code o quote