Opa, primeiramente muito obrigado pela ajuda, fiz como você mencionou, mas o erro persiste, segue o código atual :
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
/*
* jTAgendaContatos.java
*
* Created on 03/01/2010, 16:23:09
*/
package junior.forms;
import java.sql.SQLException;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JOptionPane;
import javax.swing.ListSelectionModel;
import javax.swing.table.DefaultTableModel;
import junior.dao.ContatoDao;
import junior.logica.Contato;
/**
*
* @author junior
*/
public class jTAgendaContatos extends javax.swing.JFrame {
DefaultTableModel tmContato = new DefaultTableModel(null, new String[]{"Id", "Nome", "Endereco"});
List<Contato> contatos;
ListSelectionModel lsmContato;
/** Creates new form jTAgendaContatos */
public jTAgendaContatos() {
initComponents();
desabilitaDados();
}
/** This method is called from within the constructor to
* initialize the form.
* WARNING: Do NOT modify this code. The content of this method is
* always regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
jPanel1 = new javax.swing.JPanel();
jLId = new javax.swing.JLabel();
jLNome = new javax.swing.JLabel();
jLEndereco = new javax.swing.JLabel();
jLTelefone = new javax.swing.JLabel();
jLEmail = new javax.swing.JLabel();
jLSexo = new javax.swing.JLabel();
jTId = new javax.swing.JTextField();
jTNome = new javax.swing.JTextField();
jTEndereco = new javax.swing.JTextField();
jTTelefone = new javax.swing.JTextField();
jTEmail = new javax.swing.JTextField();
jTSexo = new javax.swing.JTextField();
jBPesquisa = new javax.swing.JButton();
jTPesquisar = new javax.swing.JTextField();
jScrollPane1 = new javax.swing.JScrollPane();
jTable1 = new javax.swing.JTable();
jPanel2 = new javax.swing.JPanel();
jPanel3 = new javax.swing.JPanel();
jBSair = new javax.swing.JButton();
jBNovo = new javax.swing.JButton();
jBAlterar = new javax.swing.JButton();
jBExcluir = new javax.swing.JButton();
jBSalvar = new javax.swing.JButton();
jMenuBar1 = new javax.swing.JMenuBar();
jMenu1 = new javax.swing.JMenu();
jMAlterar = new javax.swing.JMenuItem();
jMExcluir = new javax.swing.JMenuItem();
jMSalvar = new javax.swing.JMenuItem();
jMSair = new javax.swing.JMenuItem();
jMenuItem8 = new javax.swing.JMenuItem();
jMenu2 = new javax.swing.JMenu();
jMenu3 = new javax.swing.JMenu();
jMAjuda = new javax.swing.JMenu();
jMFalha = new javax.swing.JMenuItem();
jMCreditos = new javax.swing.JMenuItem();
jMenuItem4 = new javax.swing.JMenuItem();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setTitle("Sisteminha :)");
jPanel1.setBorder(javax.swing.BorderFactory.createTitledBorder("Dados do contato"));
jLId.setText("ID:");
jLNome.setText("Nome:");
jLEndereco.setText("Endereço:");
jLTelefone.setText("Telefone:");
jLEmail.setText("E-mail:");
jLSexo.setText("Sexo:");
javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
jPanel1.setLayout(jPanel1Layout);
jPanel1Layout.setHorizontalGroup(
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(jLNome, javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLId, javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.LEADING, jPanel1Layout.createSequentialGroup()
.addComponent(jLEndereco)
.addGap(12, 12, 12)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jTEndereco, javax.swing.GroupLayout.DEFAULT_SIZE, 291, Short.MAX_VALUE)
.addComponent(jTId, javax.swing.GroupLayout.PREFERRED_SIZE, 89, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jTNome, javax.swing.GroupLayout.PREFERRED_SIZE, 273, javax.swing.GroupLayout.PREFERRED_SIZE))))
.addGap(18, 18, 18)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLSexo)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLTelefone)
.addComponent(jLEmail))
.addGap(12, 12, 12)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jTTelefone, javax.swing.GroupLayout.DEFAULT_SIZE, 291, Short.MAX_VALUE)
.addComponent(jTSexo, javax.swing.GroupLayout.PREFERRED_SIZE, 48, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jTEmail, javax.swing.GroupLayout.DEFAULT_SIZE, 291, Short.MAX_VALUE))))
.addGap(31, 31, 31))
);
jPanel1Layout.setVerticalGroup(
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLId)
.addComponent(jTId, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLNome)
.addComponent(jTNome, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLEndereco)
.addComponent(jTEndereco, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
.addGroup(jPanel1Layout.createSequentialGroup()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLTelefone)
.addComponent(jTTelefone, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLEmail)
.addComponent(jTEmail, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLSexo)
.addComponent(jTSexo, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))))
.addContainerGap(44, Short.MAX_VALUE))
);
jBPesquisa.setText("Pesquisar");
jBPesquisa.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jBPesquisaActionPerformed(evt);
}
});
jTable1.setModel(tmContato);
jScrollPane1.setViewportView(jTable1);
javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2);
jPanel2.setLayout(jPanel2Layout);
jPanel2Layout.setHorizontalGroup(
jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 206, Short.MAX_VALUE)
);
jPanel2Layout.setVerticalGroup(
jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 1, Short.MAX_VALUE)
);
jBSair.setText("SAIR");
jBSair.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jBSairActionPerformed(evt);
}
});
jBNovo.setText("NOVO");
jBNovo.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jBNovoActionPerformed(evt);
}
});
jBAlterar.setText("ALTERAR");
jBExcluir.setText("EXCLUIR");
jBSalvar.setText("SALVAR");
jBSalvar.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jBSalvarActionPerformed(evt);
}
});
javax.swing.GroupLayout jPanel3Layout = new javax.swing.GroupLayout(jPanel3);
jPanel3.setLayout(jPanel3Layout);
jPanel3Layout.setHorizontalGroup(
jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel3Layout.createSequentialGroup()
.addGap(200, 200, 200)
.addComponent(jBNovo)
.addGap(18, 18, 18)
.addComponent(jBAlterar)
.addGap(18, 18, 18)
.addComponent(jBExcluir)
.addGap(18, 18, 18)
.addComponent(jBSalvar)
.addGap(18, 18, 18)
.addComponent(jBSair)
.addContainerGap(29, Short.MAX_VALUE))
);
jPanel3Layout.setVerticalGroup(
jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel3Layout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jBSair)
.addComponent(jBNovo)
.addComponent(jBAlterar)
.addComponent(jBExcluir)
.addComponent(jBSalvar))
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
);
jMenu1.setText("Arquivo");
jMenu1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jMenu1ActionPerformed(evt);
}
});
jMAlterar.setText("Novo");
jMAlterar.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jMAlterarActionPerformed(evt);
}
});
jMenu1.add(jMAlterar);
jMExcluir.setText("Alterar");
jMenu1.add(jMExcluir);
jMSalvar.setText("Excluir");
jMenu1.add(jMSalvar);
jMSair.setText("Salvar");
jMenu1.add(jMSair);
jMenuItem8.setText("Sair");
jMenu1.add(jMenuItem8);
jMenuBar1.add(jMenu1);
jMenu2.setText("Editar");
jMenuBar1.add(jMenu2);
jMenu3.setText("Ferramentas");
jMenuBar1.add(jMenu3);
jMAjuda.setText("Ajuda");
jMFalha.setText("Tópicos de ajuda");
jMAjuda.add(jMFalha);
jMCreditos.setText("Reportar falha");
jMAjuda.add(jMCreditos);
jMenuItem4.setText("Créditos");
jMAjuda.add(jMenuItem4);
jMenuBar1.add(jMAjuda);
setJMenuBar(jMenuBar1);
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jPanel1, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addGroup(layout.createSequentialGroup()
.addGap(595, 595, 595)
.addComponent(jPanel2, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
.addComponent(jScrollPane1, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, 801, Short.MAX_VALUE)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
.addComponent(jTPesquisar, javax.swing.GroupLayout.DEFAULT_SIZE, 715, Short.MAX_VALUE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(jBPesquisa))))
.addGroup(layout.createSequentialGroup()
.addGap(37, 37, 37)
.addComponent(jPanel3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
.addContainerGap())
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
.addContainerGap()
.addComponent(jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(57, 57, 57)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(jBPesquisa)
.addComponent(jTPesquisar, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(18, 18, 18)
.addComponent(jPanel3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 14, Short.MAX_VALUE)
.addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 279, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(22, 22, 22))
);
pack();
}// </editor-fold>
private void jBNovoActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
habilitaDados();
jTNome.setText("");
jTEmail.setText("");
jTEndereco.setText("");
jTSexo.setText("");
jTTelefone.setText("");
}
private void jMAlterarActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
jTNome.setText("");
jTEmail.setText("");
jTEndereco.setText("");
jTSexo.setText("");
jTTelefone.setText("");
}
public void desabilitaDados() {
jTId.setEditable(false);
jTNome.setEditable(false);
jTEndereco.setEditable(false);
jTEmail.setEditable(false);
jTSexo.setEditable(false);
jTTelefone.setEditable(false);
}
public void habilitaDados() {
jTNome.setEditable(true);
jTEndereco.setEditable(true);
jTEmail.setEditable(true);
jTSexo.setEditable(true);
jTTelefone.setEditable(true);
}
public boolean verificaDados() {
if (!jTNome.getText().equals("") && !jTEndereco.getText().equals("")) { //Campos obrigatórios
return true;
} else {
JOptionPane.showMessageDialog(null, "Campos NOME ou ENDEREÇO não preenchidos!");
return false;
}
}
private void jBSalvarActionPerformed(java.awt.event.ActionEvent evt) {
if (verificaDados()) {
cadastro();
desabilitaDados();
}
}
public void listarContatos() throws SQLException {
ContatoDao dao = new ContatoDao();
contatos = dao.getLista("%" + jTPesquisar.getText() + "%");
mostraPesquisa(contatos);
}
public void cadastro() {
try {
// TODO add your handling code here:
Contato c1 = new Contato();
c1.setNome(jTNome.getText());
c1.setTel(jTTelefone.getText());
c1.setEndereco(jTEndereco.getText());
c1.setEmail(jTEmail.getText());
c1.setSexo(jTSexo.getText());
ContatoDao dao = new ContatoDao();
dao.adiociona(c1);
} catch (SQLException ex) {
JOptionPane.showMessageDialog(null, "Oops!Houve problemas... ");
}
}
private void jMenu1ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
}
private void jBPesquisaActionPerformed(java.awt.event.ActionEvent evt) {
try {
// TODO add your handling code here:
listarContatos();
} catch (SQLException ex) {
JOptionPane.showMessageDialog(null, "Houve problemas no campo de pesquisa!");
}
}
private void jBSairActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
System.exit(0);
}
/**
* @param args the command line arguments
*/
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new jTAgendaContatos().setVisible(true);
}
});
}
// Variables declaration - do not modify
private javax.swing.JButton jBAlterar;
private javax.swing.JButton jBExcluir;
private javax.swing.JButton jBNovo;
private javax.swing.JButton jBPesquisa;
private javax.swing.JButton jBSair;
private javax.swing.JButton jBSalvar;
private javax.swing.JLabel jLEmail;
private javax.swing.JLabel jLEndereco;
private javax.swing.JLabel jLId;
private javax.swing.JLabel jLNome;
private javax.swing.JLabel jLSexo;
private javax.swing.JLabel jLTelefone;
private javax.swing.JMenu jMAjuda;
private javax.swing.JMenuItem jMAlterar;
private javax.swing.JMenuItem jMCreditos;
private javax.swing.JMenuItem jMExcluir;
private javax.swing.JMenuItem jMFalha;
private javax.swing.JMenuItem jMSair;
private javax.swing.JMenuItem jMSalvar;
private javax.swing.JMenu jMenu1;
private javax.swing.JMenu jMenu2;
private javax.swing.JMenu jMenu3;
private javax.swing.JMenuBar jMenuBar1;
private javax.swing.JMenuItem jMenuItem4;
private javax.swing.JMenuItem jMenuItem8;
private javax.swing.JPanel jPanel1;
private javax.swing.JPanel jPanel2;
private javax.swing.JPanel jPanel3;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JTextField jTEmail;
private javax.swing.JTextField jTEndereco;
private javax.swing.JTextField jTId;
private javax.swing.JTextField jTNome;
private javax.swing.JTextField jTPesquisar;
private javax.swing.JTextField jTSexo;
private javax.swing.JTextField jTTelefone;
private javax.swing.JTable jTable1;
// End of variables declaration
private void mostraPesquisa(List<Contato> contatos) {
if (contatos.size() == 0) {
JOptionPane.showMessageDialog(null, "Nenhum contato cadastrado!" );
} else {
String[] linha = new String []{null, null, null};
for (int i = 0; i < contatos.size(); i++) {
tmContato.addRow(linha);
tmContato.setValueAt(contatos.get(i).getId(), i, 0);
tmContato.setValueAt(contatos.get(i).getNome(), i, 1);
tmContato.setValueAt(contatos.get(i).getEndereco(), i, 2);
tmContato.setValueAt(contatos.get(i).getTel(), i, 3);
}
}
}
}
PS : O erro só aparece quando eu clico no botão de pesquisa.