Eae Pessoal tenho um projeto que quero mostrar dados do Banco de Dados em uma JTable mas quando eu vou testar aparece o seguinte erro:
Agora esse são os prints das linhas que o erro aponta:
For nescessario eu mando o codigo inteiro
Eae Pessoal tenho um projeto que quero mostrar dados do Banco de Dados em uma JTable mas quando eu vou testar aparece o seguinte erro:
Agora esse são os prints das linhas que o erro aponta:
For nescessario eu mando o codigo inteiro
Qual a dificuldade em copiar e colar o código, o erro e o que mais for preciso aqui?
Cara, imagens atrapalham demais para quem vai tentar ajudar.
O que tem na linha 31 da classe FormMedico?
Ta ai cógido completo:
public class FormMedico extends javax.swing.JFrame {
ConexaoBD conex = new ConexaoBD();
DaoMedico contromed = new DaoMedico();
BeansMedico modmed = new BeansMedico();
int flag = 0;
}
public FormMedico() {
initComponents();
DefaultTableModel modelo = (DefaultTableModel) TabelaMedico.getModel();
TabelaMedico.setRowSorter(new TableRowSorter(modelo));
readJtable();
}
public final void readJtable() {
DefaultTableModel modelo = (DefaultTableModel) TabelaMedico.getModel();
modelo.setNumRows(0);
DaoMedico mdao = new DaoMedico();
}
for(BeansMedico m : mdao.read()){ //Essa é a linha 31
modelo.addRow(new Object[]{
m.getCodigo(),
m.getNome(),
m.getEspec(),
m.getCrm()
});
}
}
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
jPanel1 = new javax.swing.JPanel();
lblNome = new javax.swing.JLabel();
lblCRM = new javax.swing.JLabel();
lblEspc = new javax.swing.JLabel();
txtNome = new javax.swing.JTextField();
slctEspc = new javax.swing.JComboBox<>();
btnNovo = new javax.swing.JButton();
btnSalvar = new javax.swing.JButton();
btnExcluir = new javax.swing.JButton();
btnEditar = new javax.swing.JButton();
btnCancelar = new javax.swing.JButton();
lblDataNasc = new javax.swing.JLabel();
jScrollPane1 = new javax.swing.JScrollPane();
TabelaMedico = new javax.swing.JTable();
jPanel2 = new javax.swing.JPanel();
lblPesquisar = new javax.swing.JLabel();
txtPesquisa = new javax.swing.JTextField();
btnPesquisa = new javax.swing.JButton();
txtfCrm = new javax.swing.JFormattedTextField();
txtfDatanasc = new javax.swing.JFormattedTextField();
lblID = new javax.swing.JLabel();
txtID = new javax.swing.JTextField();
lblTitulo = new javax.swing.JLabel();
setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
jPanel1.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED));
lblNome.setFont(new java.awt.Font("Arial", 0, 11)); // NOI18N
lblNome.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
lblNome.setText("Nome:");
lblCRM.setFont(new java.awt.Font("Arial", 0, 11)); // NOI18N
lblCRM.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
lblCRM.setText("CRM:");
lblEspc.setFont(new java.awt.Font("Arial", 0, 11)); // NOI18N
lblEspc.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
lblEspc.setText("Especialização:");
txtNome.setEnabled(false);
slctEspc.setModel(new javax.swing.DefaultComboBoxModel<>(new String[] { "Cirurgião", "Anestesista", "Enfermeiro", "Auxiliar" }));
slctEspc.setEnabled(false);
btnNovo.setText("Novo");
btnNovo.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnNovoActionPerformed(evt);
}
});
btnSalvar.setText("Salvar");
btnSalvar.setEnabled(false);
btnSalvar.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnSalvarActionPerformed(evt);
}
});
btnExcluir.setText("Excluir");
btnExcluir.setEnabled(false);
btnExcluir.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnExcluirActionPerformed(evt);
}
});
btnEditar.setText("Editar");
btnEditar.setEnabled(false);
btnEditar.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnEditarActionPerformed(evt);
}
});
btnCancelar.setText("Cancelar");
btnCancelar.setEnabled(false);
btnCancelar.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnCancelarActionPerformed(evt);
}
});
lblDataNasc.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
lblDataNasc.setText("Data de nascimento:");
TabelaMedico.setModel(new javax.swing.table.DefaultTableModel(
new Object [][] {
{null, null, null, null},
{null, null, null, null},
{null, null, null, null},
{null, null, null, null}
},
new String [] {
"ID", "Nome", "Especialidade", "CRM"
}
) {
boolean[] canEdit = new boolean [] {
false, false, false, false
};
public boolean isCellEditable(int rowIndex, int columnIndex) {
return canEdit [columnIndex];
}
});
jScrollPane1.setViewportView(TabelaMedico);
jPanel2.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED));
lblPesquisar.setText(" Pesquisar:");
btnPesquisa.setText("Pesquisar");
btnPesquisa.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnPesquisaActionPerformed(evt);
}
});
javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2);
jPanel2.setLayout(jPanel2Layout);
jPanel2Layout.setHorizontalGroup(
jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel2Layout.createSequentialGroup()
.addComponent(lblPesquisar, javax.swing.GroupLayout.PREFERRED_SIZE, 85, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(txtPesquisa, javax.swing.GroupLayout.PREFERRED_SIZE, 199, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(btnPesquisa, javax.swing.GroupLayout.PREFERRED_SIZE, 153, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(0, 19, Short.MAX_VALUE))
);
jPanel2Layout.setVerticalGroup(
jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel2Layout.createSequentialGroup()
.addGap(2, 2, 2)
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(lblPesquisar, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(txtPesquisa, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(btnPesquisa)))
);
txtfCrm.setEnabled(false);
txtfDatanasc.setFormatterFactory(new javax.swing.text.DefaultFormatterFactory(new javax.swing.text.DateFormatter(new java.text.SimpleDateFormat("dd/MM/yyyy"))));
txtfDatanasc.setEnabled(false);
lblID.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
lblID.setText("ID:");
txtID.setEnabled(false);
javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
jPanel1.setLayout(jPanel1Layout);
jPanel1Layout.setHorizontalGroup(
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addGap(38, 38, 38)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
.addComponent(lblNome, javax.swing.GroupLayout.DEFAULT_SIZE, 94, Short.MAX_VALUE)
.addComponent(lblCRM, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
.addComponent(btnEditar, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(btnNovo, javax.swing.GroupLayout.PREFERRED_SIZE, 95, javax.swing.GroupLayout.PREFERRED_SIZE))
.addComponent(btnSalvar, javax.swing.GroupLayout.PREFERRED_SIZE, 94, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(btnExcluir, javax.swing.GroupLayout.PREFERRED_SIZE, 95, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(btnCancelar, javax.swing.GroupLayout.PREFERRED_SIZE, 94, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(18, 18, 18))
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup()
.addContainerGap()
.addComponent(lblID, javax.swing.GroupLayout.PREFERRED_SIZE, 27, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(48, 48, 48)))
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
.addComponent(txtfCrm)
.addComponent(txtNome, javax.swing.GroupLayout.DEFAULT_SIZE, 193, Short.MAX_VALUE))
.addComponent(txtID, javax.swing.GroupLayout.PREFERRED_SIZE, 49, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(lblEspc, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, 94, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(lblDataNasc, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, 118, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
.addComponent(slctEspc, 0, 136, Short.MAX_VALUE)
.addComponent(txtfDatanasc))
.addGap(53, 53, 53))
.addGroup(jPanel1Layout.createSequentialGroup()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 523, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addContainerGap(23, Short.MAX_VALUE))))
);
jPanel1Layout.setVerticalGroup(
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addGap(34, 34, 34)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(lblEspc)
.addComponent(slctEspc, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(txtID, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(lblID, javax.swing.GroupLayout.Alignment.TRAILING))))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(lblDataNasc)
.addComponent(txtfDatanasc, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(txtNome, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(lblNome)))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(lblCRM)
.addComponent(txtfCrm, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addComponent(btnNovo)
.addGap(5, 5, 5)
.addComponent(btnSalvar)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(btnEditar)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(btnExcluir, javax.swing.GroupLayout.PREFERRED_SIZE, 23, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(btnCancelar))
.addGroup(jPanel1Layout.createSequentialGroup()
.addComponent(jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 200, javax.swing.GroupLayout.PREFERRED_SIZE)))
.addContainerGap(22, Short.MAX_VALUE))
);
lblTitulo.setFont(new java.awt.Font("Arial", 1, 18)); // NOI18N
lblTitulo.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
lblTitulo.setText("Cadastro de médicos");
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()
.addGap(190, 190, 190)
.addComponent(lblTitulo, javax.swing.GroupLayout.PREFERRED_SIZE, 293, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
.addContainerGap(28, Short.MAX_VALUE))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addComponent(lblTitulo)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap(21, Short.MAX_VALUE))
);
pack();
} </editor-fold>
private void btnSalvarActionPerformed(java.awt.event.ActionEvent evt) {
if(flag==1){
modmed.setNome(txtNome.getText());
modmed.setEspec((String) slctEspc.getSelectedItem());
modmed.setCrm(Integer.parseInt(txtfCrm.getText()));
contromed.Salvar(modmed);
txtNome.setText("");
txtfCrm.setText("");
txtNome.setEnabled(false);
txtfCrm.setEnabled(false);
slctEspc.setEnabled(false);
btnSalvar.setEnabled(false);
readJtable();
}else{
modmed.setNome(txtNome.getText());
modmed.setEspec((String) slctEspc.getSelectedItem());
modmed.setCrm(Integer.parseInt(txtfCrm.getText()));
modmed.setCodigo(Integer.parseInt(txtID.getText()));
contromed.Editar(modmed);
txtNome.setEnabled(false);
txtfCrm.setEnabled(false);
slctEspc.setEnabled(false);
btnSalvar.setEnabled(false);
readJtable();
}
}
private void btnPesquisaActionPerformed(java.awt.event.ActionEvent evt) {
modmed.setPesquisa(txtPesquisa.getText());
BeansMedico model = contromed.buscaMedico(modmed);
txtID.setText(String.valueOf(model.getCodigo()));
txtNome.setText(model.getNome());
slctEspc.setSelectedItem(model.getEspec());
txtfCrm.setText(String.valueOf(model.getCrm()));
btnEditar.setEnabled(true);
btnExcluir.setEnabled(true);
btnSalvar.setEnabled(false);
btnNovo.setEnabled(false);
}
private void btnNovoActionPerformed(java.awt.event.ActionEvent evt) {
flag = 1;
txtNome.setEnabled(true);
txtfCrm.setEnabled(true);
slctEspc.setEnabled(true);
btnSalvar.setEnabled(true);
btnCancelar.setEnabled(true);
}
private void btnEditarActionPerformed(java.awt.event.ActionEvent evt) {
flag = 2;
btnSalvar.setEnabled(true);
btnNovo.setEnabled(false);
btnCancelar.setEnabled(true);
slctEspc.setEnabled(true);
txtNome.setEnabled(true);
txtfCrm.setEnabled(true);
btnCancelar.setEnabled(true);
btnEditar.setEnabled(false);
btnExcluir.setEnabled(false);
}
private void btnCancelarActionPerformed(java.awt.event.ActionEvent evt) {
btnSalvar.setEnabled(!true);
btnNovo.setEnabled(!false);
btnCancelar.setEnabled(true);
slctEspc.setEnabled(!true);
txtNome.setEnabled(!true);
txtfCrm.setEnabled(!true);
btnCancelar.setEnabled(!true);
btnEditar.setEnabled(false);
btnExcluir.setEnabled(false);
txtNome.setText("");
txtfCrm.setText("");
txtID.setText("");
}
private void btnExcluirActionPerformed(java.awt.event.ActionEvent evt) {
int resposta;
resposta = JOptionPane.showConfirmDialog(rootPane,"Realmente dejesa excluir OS CAMPOS?");
if(resposta ==JOptionPane.YES_OPTION){
modmed.setCodigo(Integer.parseInt(txtID.getText()));
contromed.Excluir(modmed);
txtNome.setText("");
txtfCrm.setText("");
txtID.setText("");
}
public static void main(String args[]) {
try {
for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
if ("Nimbus".equals(info.getName())) {
javax.swing.UIManager.setLookAndFeel(info.getClassName());
break;
}
}
} catch (ClassNotFoundException ex) {
java.util.logging.Logger.getLogger(FormMedico.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (InstantiationException ex) {
java.util.logging.Logger.getLogger(FormMedico.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (IllegalAccessException ex) {
java.util.logging.Logger.getLogger(FormMedico.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (javax.swing.UnsupportedLookAndFeelException ex) {
java.util.logging.Logger.getLogger(FormMedico.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
}
//</editor-fold>
java.awt.EventQueue.invokeLater(new Runnable() {
@Override
public void run() {
new FormMedico().setVisible(true);
}
});
}
// Variables declaration - do not modify
private javax.swing.JTable TabelaMedico;
private javax.swing.JButton btnCancelar;
private javax.swing.JButton btnEditar;
private javax.swing.JButton btnExcluir;
private javax.swing.JButton btnNovo;
private javax.swing.JButton btnPesquisa;
private javax.swing.JButton btnSalvar;
private javax.swing.JPanel jPanel1;
private javax.swing.JPanel jPanel2;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JLabel lblCRM;
private javax.swing.JLabel lblDataNasc;
private javax.swing.JLabel lblEspc;
private javax.swing.JLabel lblID;
private javax.swing.JLabel lblNome;
private javax.swing.JLabel lblPesquisar;
private javax.swing.JLabel lblTitulo;
private javax.swing.JComboBox<String> slctEspc;
private javax.swing.JTextField txtID;
private javax.swing.JTextField txtNome;
private javax.swing.JTextField txtPesquisa;
private javax.swing.JFormattedTextField txtfCrm;
private javax.swing.JFormattedTextField txtfDatanasc;
// End of variables declaration
}
Cara, preciso saber o que tem na linha 31 da classe FormMedico, só postar o código não vai me ajudar
NullPointerException
significa que você tentou acessar um membro de um objeto, mas esse objeto não foi inicializado, ou seja, está com referência null
.
Na sua linha 31 há o seguinte código:
for (BeansMedico m : mdao.read()) {
....
}
O objeto mdao
você inicializou antes do for
, então é o seu método read()
que está está retornando null
e impossibilitando a execução do laço.
Outra coisa, não fique adicionando arrays de objetos em um DefaultTableModel
, implemente o seu próprio TableModel
para renderizar uma lista de BeansMedico
.
ja consegui resolver criando meu proprio Table Model, bem melhor !