Leben 0 Denunciar post Postado Novembro 30, 2011 Bom dia pessoal sou novo no mundo JAVA e estou implementando uma aplicação de locadora de video com funcoes bem basicas como cadastro de cliente, cadastro de filme, minha aplicação tem interface gráfica e é ligada ao banco de dados mysql, só que esta dando erro Exception in thread "main" java.lang.NullPointerException e não consigo resolver vou postar o codigo aki e quem puder me ajudar agradeço O ERRO É ESTE Exception in thread "main" java.lang.NullPointerException at br.edu.unicarioca.semestre22011.infA21.turma853.aluno2010101155.locadora.controle.ClienteControle.atualizarFrame(ClienteControle.java:180) at br.edu.unicarioca.semestre22011.infA21.turma853.aluno2010101155.locadora.controle.ClienteControle.<init>(ClienteControle.java:48) at br.edu.unicarioca.semestre22011.infA21.turma853.aluno2010101155.locadora.controle.LocadoraControle.<init>(LocadoraControle.java:32) at br.edu.unicarioca.semestre22011.infA21.turma853.aluno2010101155.locadora.teste.LocadoraTeste.main(LocadoraTeste.java:12) CLASSE CLINTE CONTROLE package br.edu.unicarioca.semestre22011.infA21.turma853.aluno2010101155.locadora.controle; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.sql.Date; import java.text.ParseException; import java.text.SimpleDateFormat; import javax.swing.JButton; import br.edu.unicarioca.semestre22011.infA21.turma853.aluno2010101155.locadora.modelo.Cliente; import br.edu.unicarioca.semestre22011.infA21.turma853.aluno2010101155.locadora.modelo.ClienteDAO; import br.edu.unicarioca.semestre22011.infA21.turma853.aluno2010101155.locadora.modelo.Endereco; import br.edu.unicarioca.semestre22011.infA21.turma853.aluno2010101155.locadora.visao.ClienteFrame; public class ClienteControle implements ActionListener { private ClienteDAO clienteDAO; private ClienteFrame clienteFrame; private Endereco endereco; /** * Construtor padrão da classe. */ public ClienteControle() { super(); clienteDAO = new ClienteDAO(); clienteFrame = new ClienteFrame(); clienteFrame.setVisible(false); clienteFrame.setLocation(50, 50); clienteFrame.getBotaoPesquisar().addActionListener(this); clienteFrame.getBotaoInserir().addActionListener(this); clienteFrame.getBotaoAlterar().addActionListener(this); clienteFrame.getBotaoExcluir().addActionListener(this); clienteFrame.getBotaoLimpar().addActionListener(this); clienteFrame.getBotaoSair().addActionListener(this); // Inicia os campos do formulário com os dados iniciais de um cliente ainda não cadastrado. atualizarFrame (new Cliente(""), endereco,null); } /** * Retorna o janela de cadastro de cliente. */ public ClienteFrame getClienteFrame() { return clienteFrame; } /** * Executa as ações de click dos componentes do formulário. */ @Override public void actionPerformed(ActionEvent e) { String mensagem = "Operação realizada com sucesso!"; JButton componente = (JButton) e.getSource(); Cliente cliente; try { cliente = getCliente(); if (componente.getText().equals("Pesquisar")) { if (componente.getText().equals("Pesquisar")) { String CPF = cliente.getCPF(); cliente = clienteDAO.recuperarCliente(CPF); if (cliente == null) { cliente = new Cliente(CPF); mensagem = "Código de cliente não cadastrado!"; } } else if (componente.getText().equals("Inserir")) { if (!clienteDAO.inserirCliente(cliente)) mensagem = "Código de cliente já cadastrado!"; } else if (componente.getText().equals("Alterar")) { if (!clienteDAO.alterarCliente(cliente)) mensagem = "Código de cliente não encontrado!"; } else if (componente.getText().equals("Excluir")) { if (clienteDAO.excluirCliente(cliente.getCPF())) cliente = new Cliente(""); else mensagem = "Código de cliente não encontrado!"; } else if (componente.getText().equals("Limpar")) { cliente = new Cliente(""); mensagem = "tela em branco!"; } else if (componente.getText().equals("Sair")) { clienteFrame.setVisible(false); } if (!componente.getText().equals("Sair")) atualizarFrame(cliente, endereco, mensagem);}} catch (ParseException e1) { /** * No caso de exceção o programa nâo fará nada * */ e1.printStackTrace(); } } private Cliente getCliente() throws ParseException { SimpleDateFormat dateFormat = new SimpleDateFormat ("dd/mm/yyyy"); Cliente cliente = new Cliente (clienteFrame.getCampoCpf().getText()); try { Date dataNascimento = new Date(dateFormat.parse(clienteFrame.getCampoDatanasc().getText()).getTime()); cliente.setData_nascimento(dataNascimento); } catch (Exception e) { // No caso de exceção de conversão, não faz nada, ou seja, assume o valor nulo. } cliente.setNome(clienteFrame.getCampoNome().getText()); cliente.setRG(clienteFrame.getCampoRg().getText()); cliente.setgrupoSexo(clienteFrame.getgrupoSexo()); cliente.setTelefone(clienteFrame.getCampoTelefone().getText()); endereco.setNumero(Integer.parseInt(clienteFrame.getCampoNumero().getText())); endereco.setRua(clienteFrame.getCampoRua().getText()); endereco.setCEP(Integer.parseInt(clienteFrame.getCampoCep().getText())); endereco.setComplemento(clienteFrame.getCampoCompl().getText()); endereco.setBairro(clienteFrame.getCampoBairro().getText()); endereco.setEstado((String) clienteFrame.getCampoEstado().getSelectedItem()); return cliente; } /** * Atualiza os dados de um cliente nos campo do formulário. */ public void atualizarFrame(Cliente cliente, Endereco endereco, String mensagem) { // Preenchendo os campos da tela. clienteFrame.getCampoCpf().setText(cliente.getCPF()); clienteFrame.getCampoNome().setText(cliente.getNome()); clienteFrame.getCampoRg().setText(cliente.getRG()); clienteFrame.getCampoRua().setText(endereco.getRua()); clienteFrame.getCampoDatanasc().getText().toString(); clienteFrame.getCampoTelefone().setText(cliente.getTelefone()); clienteFrame.getCampoNumero().setText(endereco.getNumero().toString()); clienteFrame.getCampoCompl().setText(endereco.getComplemento()); clienteFrame.getCampoBairro().setText(endereco.getBairro()); clienteFrame.getCampoCidade().setText(endereco.getCidade()); clienteFrame.getCampoEstado().setToolTipText(endereco.getEstado().toString()); clienteFrame.getCampoCep().setText(endereco.getCEP().toString()); } } CLASSE LOCADORA CLIENTE package br.edu.unicarioca.semestre22011.infA21.turma853.aluno2010101155.locadora.controle; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JComponent; import br.edu.unicarioca.semestre22011.infA21.turma853.aluno2010101155.locadora.visao.ClienteFrame; import br.edu.unicarioca.semestre22011.infA21.turma853.aluno2010101155.locadora.visao.FilmeFrame; import br.edu.unicarioca.semestre22011.infA21.turma853.aluno2010101155.locadora.visao.LocadoraFrame; public class LocadoraControle implements ActionListener { private LocadoraFrame locadoraFrame; private FilmeControle filmeControle; private ClienteControle clienteControle; /** * Construtor padrão da classe. */ public LocadoraControle() { super(); locadoraFrame = new LocadoraFrame(); locadoraFrame.getMenuItemCliente().addActionListener(this); locadoraFrame.getMenuItemFilme().addActionListener(this); filmeControle = new FilmeControle(); clienteControle = new ClienteControle(); locadoraFrame.getPainelFundo().add(filmeControle.getFilmeFrame()); } /** * Executa as ações de click dos componentes do formulário. */ @Override public void actionPerformed(ActionEvent e) { JComponent opcao = (JComponent)e.getSource(); if (opcao.getName().equals("menuItemCliente")) exibirClienteFrame(); else if (opcao.getName().equals("menuItemFilme")) exibirFilmeFrame(); } /** * Exibe a janela principal do sistema. */ public void exibirLocadoraFrame() { locadoraFrame.setVisible(true); } /** * Exibe a janela de cadastro de clientes. */ private void exibirClienteFrame() { ClienteFrame clienteFrame = clienteControle.getClienteFrame(); clienteFrame.setVisible(true); locadoraFrame.getPainelFundo().moveToFront(clienteFrame); } /** * Exibe a janela de cadastro de filmes. */ private void exibirFilmeFrame() { FilmeFrame filmeFrame = filmeControle.getFilmeFrame(); filmeFrame.setVisible(true); locadoraFrame.getPainelFundo().moveToFront(filmeFrame); } } CLASSE LOCADORA TESTE package br.edu.unicarioca.semestre22011.infA21.turma853.aluno2010101155.locadora.teste; import br.edu.unicarioca.semestre22011.infA21.turma853.aluno2010101155.locadora.controle.LocadoraControle; public class LocadoraTeste { /** * @param args */ public static void main(String[] args) { LocadoraControle locadoraControle = new LocadoraControle(); locadoraControle.exibirLocadoraFrame(); } } Compartilhar este post Link para o post Compartilhar em outros sites
Virgilio Barreto 0 Denunciar post Postado Dezembro 1, 2011 Boa tarde! Você esqueceu de instanciar o objeto "endereco". Assim, você está tentando acessar um atributo inexistente no objeto. Virgilio. Compartilhar este post Link para o post Compartilhar em outros sites