Problema com

1 resposta
S

Ola, gostaria se saber o que está de errado ai. não vai de jeito algum, segue meu codigo completo, a parte que está ocorrendo o erro, e o erro

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.sql.*;

public class Cadastrar_Fornecedor extends JFrame implements ActionListener {

	private JLabel LblNome;
	private JTextField TxtNome;
	private JLabel LblEndereco;
	private JTextField TxtEndereco;
	private JLabel LblCidade;
	private JTextField TxtCidade;
	private JLabel LblBairro;
	private JTextField TxtBairro;
	private JLabel LblCep;
	private JTextField TxtCep;
	private JLabel LblTelefone;
	private JTextField TxtTelefone;
	private JButton BtnCadastrar;
   	private JButton BtnCancelar;

	private Cadastrar_Nota Cadastrar_Nota;
	private boteko boteko;
	
	public Cadastrar_Fornecedor() {
		try {
			mostra();
		} catch(Exception ex) {
			ex.printStackTrace();
		}
	}

	private void mostra() throws Exception {
		Cadastrar_Nota = new Cadastrar_Nota();
		boteko = new boteko();
		
		this.getContentPane().setLayout(null);
		this.getContentPane().setBackground(new Color(238, 238, 238));
		this.setSize(356, 260);
		this.setLocation(400, 243);
		this.setTitle("Boteko's Bar :: Cadastrar Novo Fornecedor");
		this.setResizable(false);

		LblNome = new JLabel("Nome");
		LblNome.setBounds(new Rectangle(12, 7, 41, 13));
		this.getContentPane().add(LblNome, null);
		
		TxtNome = new JTextField();
		TxtNome.setBounds(new Rectangle(12, 22, 328, 21));
		this.getContentPane().add(TxtNome, null);
		
		LblEndereco = new JLabel("Endereço");
		LblEndereco.setBounds(new Rectangle(12, 50, 57, 13));
		this.getContentPane().add(LblEndereco, null);
		
		TxtEndereco = new JTextField();
		TxtEndereco.setBounds(new Rectangle(12, 65, 328, 21));
		this.getContentPane().add(TxtEndereco, null);
		
		LblCidade = new JLabel("Cidade");
		LblCidade.setBounds(new Rectangle(12, 94, 57, 13));
		this.getContentPane().add(LblCidade, null);
		
		TxtCidade = new JTextField();
		TxtCidade.setBounds(new Rectangle(13, 109, 133, 21));
		this.getContentPane().add(TxtCidade, null);
			
		LblBairro = new JLabel("Bairro");
		LblBairro.setBounds(new Rectangle(12, 136, 57, 13));
		this.getContentPane().add(LblBairro, null);
		
		TxtBairro = new JTextField();
		TxtBairro.setBounds(new Rectangle(12, 151, 133, 21));
		this.getContentPane().add(TxtBairro, null);
		
		LblCep = new JLabel("CEP");
		LblCep.setBounds(new Rectangle(207, 94, 57, 13));
		this.getContentPane().add(LblCep, null);
		
		TxtCep = new JTextField();
		TxtCep.setBounds(new Rectangle(208, 109, 133, 21));
		this.getContentPane().add(TxtCep, null);
		
		LblTelefone = new JLabel("Telefone");
		LblTelefone.setBounds(new Rectangle(207, 136, 57, 13));
		this.getContentPane().add(LblTelefone, null);
		
		TxtTelefone = new JTextField();
		TxtTelefone.setBounds(new Rectangle(208, 151, 133, 21));
		this.getContentPane().add(TxtTelefone, null);
		
		BtnCadastrar = new JButton("Cadastrar");
		BtnCadastrar.setBounds(new Rectangle(240, 194, 100, 30));
		this.getContentPane().add(BtnCadastrar, null);		
		BtnCadastrar.addActionListener(this);
		
		BtnCancelar = new JButton("Cancelar");
		BtnCancelar.setBounds(new Rectangle(132, 194, 100, 30));
		this.getContentPane().add(BtnCancelar, null);
		BtnCancelar.addActionListener(this);

		this.addWindowListener(new WindowAdapter() {
			public void windowClosing(WindowEvent e) {
				Cadastrar_Nota.show();
				hide();
			}
		});
	}

	public void actionPerformed(ActionEvent e) { 
		//FECHAR A JANELA
		if (e.getSource() == BtnCancelar) {
			Cadastrar_Nota.show();
			this.hide();
		}
		//NOVO FORNECEDOR
		if (e.getSource() == BtnCadastrar) {
			try {
				boteko.DBResult = boteko.DBState.executeQuery("SELECT nome FROM fornecedores WHERE nome LIKE '"+TxtNome.getText()+"'");
				int Total=0;
				while(boteko.DBResult.next()){
					Total++;
				}
				if(Total != 0) {
					JOptionPane.showMessageDialog(null, "Este fornecedor já está cadastrado", "Mensagem de Erro", JOptionPane.ERROR_MESSAGE); 
				} else {
					PreparedStatement DBStatement = boteko.DBcon.prepareStatement("INSERT INTO fornecedores (nome, endereco, cidade, bairro, cep, telefone) VALUES (?, ?, ?, ?, ?, ?)");
					DBStatement.clearParameters();
					DBStatement.setString(1, TxtNome.getText());
					DBStatement.setString(2, TxtEndereco.getText());
					DBStatement.setString(3, TxtCidade.getText());
					DBStatement.setString(4, TxtBairro.getText());
					DBStatement.setString(5, TxtCep.getText());
					DBStatement.setString(6, TxtTelefone.getText());
					DBStatement.executeUpdate();
					DBStatement.close();
				}				
			} catch (SQLException ex) {
				JOptionPane.showMessageDialog(null, "Erro de SQL", "Mensagem de Erro", JOptionPane.ERROR_MESSAGE);
			}
			Cadastrar_Nota.carregar();
			Cadastrar_Nota.show();
			this.hide();
		}
	} 

	public static void main(String args[]) {
		new Cadastrar_Fornecedor().show();
	}
}
try {
				boteko.DBResult = boteko.DBState.executeQuery("SELECT nome FROM fornecedores WHERE nome LIKE '"+TxtNome.getText()+"'");
				int Total=0;
				while(boteko.DBResult.next()){
					Total++;
				}
				if(Total != 0) {
					JOptionPane.showMessageDialog(null, "Este fornecedor já está cadastrado", "Mensagem de Erro", JOptionPane.ERROR_MESSAGE); 
				} else {
					PreparedStatement DBStatement = boteko.DBcon.prepareStatement("INSERT INTO fornecedores (nome, endereco, cidade, bairro, cep, telefone) VALUES (?, ?, ?, ?, ?, ?)");
					DBStatement.clearParameters();
					DBStatement.setString(1, TxtNome.getText());
					DBStatement.setString(2, TxtEndereco.getText());
					DBStatement.setString(3, TxtCidade.getText());
					DBStatement.setString(4, TxtBairro.getText());
					DBStatement.setString(5, TxtCep.getText());
					DBStatement.setString(6, TxtTelefone.getText());
					DBStatement.executeUpdate();
					DBStatement.close();
				}				
			} catch (SQLException ex) {
				JOptionPane.showMessageDialog(null, "Erro de SQL", "Mensagem de Erro", JOptionPane.ERROR_MESSAGE);
			}
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
        at Cadastrar_Fornecedor.actionPerformed(Cadastrar_Fornecedor.java:128)
        at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:18
49)
        at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.jav
a:2169)
        at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel
.java:420)
        at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258
)
        at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonL
istener.java:236)
        at java.awt.Component.processMouseEvent(Component.java:5488)
        at javax.swing.JComponent.processMouseEvent(JComponent.java:3126)
        at java.awt.Component.processEvent(Component.java:5253)
        at java.awt.Container.processEvent(Container.java:1966)
        at java.awt.Component.dispatchEventImpl(Component.java:3955)
        at java.awt.Container.dispatchEventImpl(Container.java:2024)
        at java.awt.Component.dispatchEvent(Component.java:3803)
        at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4212
)
        at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3892)

        at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3822)
        at java.awt.Container.dispatchEventImpl(Container.java:2010)
        at java.awt.Window.dispatchEventImpl(Window.java:1778)
        at java.awt.Component.dispatchEvent(Component.java:3803)
        at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
        at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchTh
read.java:242)
        at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThre
ad.java:163)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)

        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)

        at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)

o boteko.DBcon é de uma outra classe, o DBcon eh a conexao. Ele está funcionando, pois em outras classes eu utilizo ele normalmente.

agradeço desde ja, pelo menos por ter um bom lugar para postar duvidas =D

1 Resposta

B

Aponta a linha ae no código q está dando erro.
Coloca um comentário do tipo: //O ERRO ESTÁ AQUI

Criado 16 de novembro de 2006
Ultima resposta 17 de nov. de 2006
Respostas 1
Participantes 2