Java - Ayuda!! Cómo resolver el NullPoiterExeption en Java

 
Vista:
sin imagen de perfil

Ayuda!! Cómo resolver el NullPoiterExeption en Java

Publicado por Francisco David (2 intervenciones) el 31/05/2018 19:07:53
Que tal amigos, tengo un problema que quisiera me ayuden a resolver, la verdad es que apenas comienzo a programar y en ocasiones mis dudas resultan ser fáciles de resolver pero me causan mucho problema jeje, les cuento..
Estoy tratando de llevar el registro seleccionado de un Jtable de un formulario a otro formulario insertando esos datos en TextBox y ComboBox, el problema es que mi Jtable de mi primer formulario se llena con datos de varias tablas relacionadas de mi base de datos en mySQL pero tengo campos como numero_interior y numero_exterior y si tomamos en cuenta que no todas las personas tienen en su dirección un numero_interior pues al registrarlo ese campo queda vacío, al insertar todo bien, el problema esta al querer pasar los datos ya alojados en mi Jtable de mi primer formulario pues al querer pasar el campo numero_interior al txtNum_int de mi segundo formulario y detectar que esta vacío me manda el NullPoiterExeption y lo mismo me pasa con campos como correo_e, Alergias, etc que son campos de tipo null.
Les dejo el código de mi formulario 1.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
private void TabPersonalMousePressed(java.awt.event.MouseEvent evt) {
 
    try {
 
        if (evt.getClickCount() == 2) {
            frmPersonas personal = new frmPersonas();
            personal.setVisible(true);
 
            int fila = TabPersonal.getSelectedRow();
 
 
            String Id;
            String nombres;
            String apellidos;
            String genero;
            String fecha_nacimiento;
            String curp;
            String email;
            String alergias;
            String grupo_sanguineo;
            String observaciones;
            String calle;
            String colonia;
            String numero_int;
            String numero_ext;
            String codigo_postal;
            String nombre_estado;
            String municipio;
            String tipo_personal;
            String departamento;
 
            Id = TabPersonal.getValueAt(fila, 0).toString();
            nombres = TabPersonal.getValueAt(fila, 1).toString();
            apellidos = TabPersonal.getValueAt(fila, 2).toString();
            genero = TabPersonal.getValueAt(fila, 3).toString();
            fecha_nacimiento = TabPersonal.getValueAt(fila, 4).toString();
            curp = TabPersonal.getValueAt(fila, 5).toString();
            email = TabPersonal.getValueAt(fila, 6).toString();
            alergias = TabPersonal.getValueAt(fila, 7).toString();
            grupo_sanguineo = TabPersonal.getValueAt(fila, 8).toString();
            observaciones = TabPersonal.getValueAt(fila, 9).toString();
            calle = TabPersonal.getValueAt(fila, 10).toString();
            colonia = TabPersonal.getValueAt(fila, 11).toString();
            numero_int = TabPersonal.getValueAt(fila, 12).toString();
            numero_ext = TabPersonal.getValueAt(fila, 13).toString();
            codigo_postal = TabPersonal.getValueAt(fila, 14).toString();
            nombre_estado = TabPersonal.getValueAt(fila, 15).toString();
            municipio = TabPersonal.getValueAt(fila, 16).toString();
            tipo_personal = TabPersonal.getValueAt(fila, 17).toString();
            departamento = TabPersonal.getValueAt(fila, 18).toString();
 
            frmPersonas.labId.setText(Id);
            frmPersonas.txtnombre.setText(nombres);
            frmPersonas.txtApellidos.setText(apellidos);
            frmPersonas.cboGenero.setSelectedItem(genero);
            frmPersonas.dcFecha_nac.setDate(Date.valueOf(fecha_nacimiento));
            frmPersonas.txtcurp.setText(curp);
            frmPersonas.txtEmail.setText(email);
            frmPersonas.txtAlergias.setText(alergias);
            frmPersonas.cboSanguineo.setSelectedItem(grupo_sanguineo);
            frmPersonas.txtObserva.setText(observaciones);
            frmPersonas.txtCalle.setText(calle);
            frmPersonas.txtColonia.setText(colonia);
            frmPersonas.txtNoint.setText(numero_int);
            frmPersonas.txtNoext.setText(numero_ext);
            frmPersonas.txtCpostal.setText(codigo_postal);
            frmPersonas.cboEstado.setSelectedItem(nombre_estado);
            frmPersonas.cboMunicipio.setSelectedItem(municipio);
            frmPersonas.cboTipoperso.setSelectedItem(tipo_personal);
            frmPersonas.cboDepto.setSelectedItem(departamento);
 
            this.dispose();
 
        }
    } catch (Exception e) {
      JOptionPane.showConfirmDialog(null, e);
 
    }
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de kingk
Val: 247
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

Ayuda!! Cómo resolver el NullPoiterExeption en Java

Publicado por kingk (108 intervenciones) el 01/06/2018 19:53:43
Hola, puedes asignar los valores obtenidos de tu tabla asi:

frmPersonas.txtAlergias.setText(alegrias!=null?alergias:"");

frmPersonas.txtNoint.setText(numero_int!=null?numero_int:"");
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 973
Bronce
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

Ayuda!! Cómo resolver el NullPoiterExeption en Java

Publicado por Agustin (170 intervenciones) el 01/06/2018 20:01:13
En realidad te conviene crear un modelo estático y basar toda tu lógica en ese modelo.

La UI debe *mostrar* información, no *guardar* información.

Traer tus datos desde un objeto de la UI y rezar para que no pinche es un approach bastante cuestionable.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
-3
Comentar