Duvida - NullPointerException

fala galera…
to fazendo um projeto de java pra facul…
estou utilizando uma array para jogar os dados inseridos em um frame cadastro a fim de pesquisa-los em um frame de consulta.
Estou utilizando gets e sets…
quando digito os dados nos campos de cadastro e clico em cadastrar me retorna o erro de nullpointerexception…

deem uma olhada no meu codigo…

public class JFrameCadClientes extends javax.swing.JFrame {
    public Clientes[] a;

public JFrameCadClientes(Clientes array[]) {
        a = array;
        initComponents();
        //this.setExtendedState(MAXIMIZED_BOTH);
}

    private JFrameCadClientes() {
        
    }

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                         
 
   String dadoNome=jTextField1.getText();
    
   String dadoRua=jTextField2.getText();
    
   String dadoNumero =jTextField3.getText();   
       
   String dadoBairro=jTextField4.getText();
    
   String dadoCidade=jTextField5.getText();
    
   String dadoTelefone=jTextField6.getText();
       
   String dadoDataAquisicao=jTextField7.getText();
       
   String dadoVlrMensalidade=jTextField8.getText();
   double myDouble3 = Double.parseDouble(dadoVlrMensalidade);
      
   String dadoDesconto=jTextField9.getText();
   double myDouble2 = Double.parseDouble(dadoDesconto);
   
   String dadoVlrTotal=jTextField10.getText();
   double myDouble1 = Double.parseDouble(dadoVlrTotal);
   
   String dadoEndIp=jTextField11.getText();
       
   String dadoVelLink=jTextField12.getText();
      
   if (a[0].getNome() == null) { // O erro ocorre nesta linha!
   a[0].setNome(dadoNome);
   //System.out.println("Nome: " + objClientes.getNome());
   
   a[0].setRua(dadoRua);
   
   a[0].setBairro(dadoBairro);
   
   a[0].setNumero(dadoNumero);
   
   a[0].setCidade(dadoCidade);
   
   a[0].setTelefone(dadoTelefone);
   
   a[0].setVlrMensalidade(myDouble3);
   
   a[0].setDataAquisicao(dadoDataAquisicao);
   
   a[0].setEnderecoIp(dadoEndIp);
   
   a[0].setVelocidadeLink(dadoVelLink);
   
   a[0].setDescontos(myDouble2);
   
   a[0].setVlrTotal(myDouble1);
   }
   
   else if (a[1].getNome() == null) {
   a[1].setNome(dadoNome);
   //System.out.println("Nome: " + objClientes.getNome());
   
   a[1].setRua(dadoRua);
   
   a[1].setBairro(dadoBairro);
   
   a[1].setNumero(dadoNumero);
   
   a[1].setCidade(dadoCidade);
   
   a[1].setTelefone(dadoTelefone);
   
   a[1].setVlrMensalidade(myDouble3);
   
   a[1].setDataAquisicao(dadoDataAquisicao);
   
   a[1].setEnderecoIp(dadoEndIp);
   
   a[1].setVelocidadeLink(dadoVelLink);
   
   a[1].setDescontos(myDouble2);
   
   a[1].setVlrTotal(myDouble1);
   
   }
   
   else if (a[2].getNome() == null) {
   a[2].setNome(dadoNome);
   //System.out.println("Nome: " + objClientes.getNome());
   
   a[2].setRua(dadoRua);
   
   a[2].setBairro(dadoBairro);
   
   a[2].setNumero(dadoNumero);
   
   a[2].setCidade(dadoCidade);
   
   a[2].setTelefone(dadoTelefone);
   
   a[2].setVlrMensalidade(myDouble3);
   
   a[2].setDataAquisicao(dadoDataAquisicao);
   
   a[2].setEnderecoIp(dadoEndIp);
   
   a[2].setVelocidadeLink(dadoVelLink);
   
   a[2].setDescontos(myDouble2);
   
   a[2].setVlrTotal(myDouble1);
   
   }

o erro acontece na linha do IF conforme comentado no codigo.

Sera que esqueci de passar algum parametro?

valew!

Onde você esta instanciando JFrameCadClientes ??

Isso ta acontecendo pq o primeiro cliente (a[0]) do array esta nulo. Veja o que voce esta passando no construtor do frame.

Entao…olha meu App e meu form Principal…

public class TonanetApp {
    public static void main(String[] args) {
        Clientes[] arrayCli = new Clientes[3];
        Equipamentos[] arrayEquip = new Equipamentos[3];
        Fornecedores[] arrayForn = new Fornecedores[3];
        
        JFramePrincipal tPrincipal = new JFramePrincipal();
        tPrincipal.setVisible(true);
        
        JFramePrincipal objPrincipalCli = new JFramePrincipal(arrayCli);
        JFramePrincipal objPrincipalEq = new JFramePrincipal(arrayEquip);
        JFramePrincipal objPrincipalFor = new JFramePrincipal(arrayForn);
        
       
    }

JFramePrincipal

public class JFramePrincipal extends javax.swing.JFrame {
    public Clientes[] a;

public JFramePrincipal(Clientes array[]) {
    this();
    a = array;

    }



public JFramePrincipal() {
    initComponents();
    }

private void jMenuItem1ActionPerformed(java.awt.event.ActionEvent evt) {                                           
    JFrameCadClientes tClientes = new JFrameCadClientes(a);
    tClientes.setVisible(true);
    tClientes.setDefaultCloseOperation(JFrameCadClientes.DISPOSE_ON_CLOSE);
}

change to:

1. public class TonanetApp { 2. public static void main(String[] args) { 3. Clientes[] arrayCli = new Clientes[3]; 4. Equipamentos[] arrayEquip = new Equipamentos[3]; 5. Fornecedores[] arrayForn = new Fornecedores[3]; 6. 7. JFramePrincipal tPrincipal = new JFramePrincipal(arrayCli); 8. tPrincipal.setVisible(true); 9. 10. JFramePrincipal objPrincipalCli = new JFramePrincipal(arrayCli); 11. JFramePrincipal objPrincipalEq = new JFramePrincipal(arrayEquip); 12. JFramePrincipal objPrincipalFor = new JFramePrincipal(arrayForn); 13. 14. 15. }

Esqueça o que eu disse ou não, onde esta o codigo do initComponents()?

Ao que parece o NullPointer pode estar lá dentro.

entao…criei um construtor para o initComponents… no JFramePrincipal… pq sem ele estava dando erro…

Erros de NullPointer são faceis de identificar se você aprender a 'debbugar"

http://www.fsl.cs.sunysb.edu/~dquigley/cse219/index.php?it=netbeans&tt=debug&pf=y

Mais alguem q pode me ajudar ae?