actionPerformed raro

Tengo este boton con un actionPeroformed pero cuando llego a esta parte de mi codigo.

if(existe==true){
System.out.println("Este cliente ya existe");
//JOptionPane.showMessageDialog(null, "ESTE CLIENTE YA EXISTE");

Me limpia todos los campos sin que yo se lo indique, necesito saber por que pasa esto.

private JButton getJBGuardar() {
                if (jBGuardar == null) {
                        jBGuardar = new JButton();
                        jBGuardar.setLocation(new Point(378, 351));
                        jBGuardar.setText("Guardar");
                        jBGuardar.setSize(new Dimension(90, 35));
                        jBGuardar.addActionListener(new java.awt.event.ActionListener() {
                                public void actionPerformed(java.awt.event.ActionEvent e) {
                                                Cliente cliente = new Cliente();
                                                cliente.setCodigo(Integer.parseInt(getJTCodigo().getText()));
                                                cliente.setNombre(getJTNombre().getText());
                                                cliente.setDireccion(getJTDireccion().getText());
                                                cliente.setTelefono(getJTTelefono().getText());
                                                cliente.setMarca(getJTMarca().getText());
                                                cliente.setCalidad(getJTCalidad().getText());
                                                ClienteModel clientemodel = new ClienteModel();
                                               
                                                if(validar()){
                                                        JOptionPane.showMessageDialog(null, "RELLENA TODOS LOS CAMPOS");
                                                }else{
                                                       
                                                        //int id= Integer.parseInt(getJTCodigo().getText());
                                                        if(Integer.parseInt(getJTCodigo().getText())==0){
                                                                System.out.println("Preparando para nuevo registro");
                                                                if(clientemodel.verificar(getJTNombre().getText())){
                                                                        System.out.println("Este cliente ya existe");
                                                                        //JOptionPane.showMessageDialog(null, "ESTE CLIENTE YA EXISTE");
                                                                }else{
                                                                        System.out.println("Guardando registro......");
                                                                        clientemodel.guardarActualizar(cliente);
                                                                        /*enabledDisabled(false);*/
                                                                }
                                                        }else{
                                                                boolean existe = clientemodel.verificaEditar(getJTNombre().getText(), Integer.parseInt(getJTCodigo().getText()));
                                                                System.out.println(existe);
                                                                if(existe==true){
                                                                        System.out.println("Este cliente ya existe");
                                                                        //JOptionPane.showMessageDialog(null, "ESTE CLIENTE YA EXISTE");
                                                                       
                                                                }else{
                                                                        System.out.println("Actualizando registro....");
                                                                        clientemodel.guardarActualizar(cliente);
                                                                        /*enabledDisabled(false);*/
                                                                }
                                                        }
                                                       
                                                }
                                                Lista();
                                               
                                }
                        });
                }
                return jBGuardar;
        }

Saludos

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.

que raro se ve bien

En primer lugar felicitarte por que el código que pusiste es posible entenderlo lo cual es algo extremadamente raro aunque es mejor que lo partas en varios métodos privados aunque sea de 10 o 15 líneas

Mira yo no veo nada raro en tu código lo que tienes que hacer fijarte si llamas sin darte cuenta a Listener
Fíjate donde tienes código que limpie las cajas de texto
Si todo falla crea todo de nuevo pero cada ves que pongas un pedacito de código compruebas que no se borre las cajas de texto
Otra opción es que aprendas a devugear tu código
que IDE usas?

@jamilMX, recuerda poner tu

@jamilMX, recuerda poner tu código entre los tags <code> y </code>

Al llegar a esa parte de tu codigo quizá lo estes borrando sin querer al llamar:

boolean existe = clientemodel.verificaEditar(getJTNombre().getText(), Integer.parseInt(getJTCodigo().getText()));

Que hace el método : "verificarEditar"

Trata de aislar el problema para que identifiques donde te puede estar fallando.

Esto hace el método verificarEditar

Mi editor es eclipse galileo, y ya hice debug linea a linea con System.ount.println(....) y no me da, de hecho pase hacer otro modulo para no atrasarme, lo que pasa que tengo 10 modulos que llevan esa validación y aun no la he podido dejar a punto. por ahora la comente pero mete campos duplicados.

A ver si me dan un cable de ayuda o par aahorcarme xD.

       
public Integer verificaEditar(String nombre, int codigo){
                String sql="";
                int num=0;
                //boolean verificador=false;
                try {
                        sql="SELECT count(*) as verificador FROM "+table+" WHERE "+fields[1]+"='"+nombre+"' AND "+fields[0]+"<>"+codigo+"";
                        ControladorBD.addSql(sql);
                        ControladorBD.execute();
                        if(ControladorBD.finRecordSet()){
                                num=ControladorBD.getInt("verificador");
                                if(num>0){
                                        //verificador=true;
                                }else{
                                        //verificador=false;
                                }
                        }
                       
                } catch (Exception e) {
                        // TODO: handle exception
                        e.printStackTrace();
                }
                return num;
        }

Saludos y muchas gracias por su interes en ayudarme en mis primeros pasos con java.

Imagen de neko069

Duda

Veo que antes de cerrar tu código tienes un método que se llama Lista() ése que hace???

esto hace Lista y pongo lel

esto hace Lista y pongo lel metodo listaRutas de la clase ClienteModel

public void Lista(){
        listmodel = new DefaultListModel();
        ClienteModel climodel = new ClienteModel ();
        for(String clientes: climodel.listaRutas()){
                listmodel.addElement(clientes);
        }
        jList.setModel(listmodel);
}

        public Vector<String> listaRutas(){
                String sql="SELECT "+fields[1]+" FROM "+table+"";
                Vector<String> rutas = new Vector<String>();
                try {
                        ControladorBD.addSql(sql);
                        ControladorBD.execute();
                        while(ControladorBD.finRecordSet()){
                                rutas.add(ControladorBD.getString(fields[1]));
                        }
                } catch (Exception e) {
                        // TODO: handle exception
                        e.printStackTrace();
                }
                return rutas;
        }

Saludos y gracias por mirar mi codigo.

Funciona OK cambie de lugar el método Lista()

Quedo así mi codigo.

        private JButton getJBGuardar() {
                if (jBGuardar == null) {
                        jBGuardar = new JButton();
                        jBGuardar.setLocation(new Point(378, 351));
                        jBGuardar.setText("Guardar");
                        jBGuardar.setSize(new Dimension(90, 35));
                        jBGuardar.addActionListener(new java.awt.event.ActionListener() {
                                public void actionPerformed(java.awt.event.ActionEvent e) {
                                                Cliente cliente = new Cliente();
                                                cliente.setCodigo(Integer.parseInt(getJTCodigo().getText()));
                                                cliente.setNombre(getJTNombre().getText());
                                                cliente.setDireccion(getJTDireccion().getText());
                                                cliente.setTelefono(getJTTelefono().getText());
                                                cliente.setMarca(getJTMarca().getText());
                                                cliente.setCalidad(getJTCalidad().getText());
                                                ClienteModel clientemodel = new ClienteModel();
                                               
                                                if(validar()){
                                                        JOptionPane.showMessageDialog(null, "RELLENA TODOS LOS CAMPOS");
                                                }else{
                                                       
                                                        //int id= Integer.parseInt(getJTCodigo().getText());
                                                        if(Integer.parseInt(getJTCodigo().getText())==0){
                                                                //System.out.println("Preparando para nuevo registro");
                                                                if(clientemodel.verificar(getJTNombre().getText())){
                                                                       
                                                                        JOptionPane.showMessageDialog(null, "ESTE CLIENTE YA EXISTE");
                                                                }else{
                                                                        System.out.println("Guardando registro......");
                                                                        clientemodel.guardarActualizar(cliente);
                                                                        enabledDisabled(false);
                                                                        Lista();
                                                                }
                                                        }else{
                                                                Integer existe = clientemodel.verificaEditar(cliente.getNombre(), cliente.getCodigo());
                                                                //System.out.println(existe);
                                                                //int existe=1;
                                                                if(existe==1){
                                                                        //System.out.println("Este cliente ya existe");
                                                                        JOptionPane.showMessageDialog(null, "ESTE CLIENTE YA EXISTE");
                                                                       
                                                                }else{
                                                                        System.out.println("Actualizando registro....");
                                                                        clientemodel.guardarActualizar(cliente);
                                                                        enabledDisabled(false);
                                                                        Lista();
                                                                }
                                                        }
                                                       
                                                }
                                                //Lista();
                                               
                                }
                        });
                }
                return jBGuardar;
        }
Imagen de neko069

...

Pues se supone que tu método Lista() tiene el fin de llenar unos (valga la rebuznancia) componentes visuales tipo JList en tu aplicación no? yo pienso, que igual tus consultas no estan trayendo resultados, por lo tanto tanto tu lista como tu modelo, no los estás llenando con nada, por eso se limpian tus componentes.. checa la parte donde llenas tus modelos, lo más seguro es que sea por ahí...