Tenho uma JTable dentro de uma JDialog. Queria que quando a JDialog fosse invocada, aparecesse todos registros (ID e Nome) da tabela Clientes (Access) dentro da JTable. Eu compilo pelo JCreator e não dá erro nenhum. Quando A JDialog abre só aparece o tratamento de erro da conexão e não aparece os dados na JTable. Uso a mesma conexão para inserir dados na tabela clientes e funciona perfeitamente.
Segue o código:
final DefaultTableModel modelo = new DefaultTableModel();
JTableDados = new JTable(modelo);
modelo.addColumn("ID");
modelo.addColumn("Nome");
modelo.addColumn("CPF");
modelo.addColumn("Telefone");
modelo.addColumn("Data Nasc.");
modelo.addColumn("Data Cadastro");
JTableDados.getColumnModel().getColumn(0).setPreferredWidth(10);
JTableDados.getColumnModel().getColumn(1).setPreferredWidth(250);
JTableDados.getColumnModel().getColumn(2).setPreferredWidth(50);
JTableDados.getColumnModel().getColumn(3).setPreferredWidth(50);
JTableDados.getColumnModel().getColumn(4).setPreferredWidth(50);
JTableDados.getColumnModel().getColumn(5).setPreferredWidth(50);
modelo.addRow(new Object[]{null, null, null, null, null, null});
JTableDados.setFont(new Font("Segoe UI",Font.PLAIN,11));
JTableDados.setSelectionBackground(Color.YELLOW);
JTableDados.setSelectionForeground(Color.BLUE);
JTableDados.getTableHeader().setResizingAllowed(false);// evita que as colunas sejam redimensionadas
JTableDados.getTableHeader().setReorderingAllowed(false);// evita que as colunas sejam reordenadas
JTableDados.setShowGrid(false);// oculta a grade da tabela
JTableDados.setShowHorizontalLines(false);// oculta as linhas horizontais da tabela
JTableDados.setShowVerticalLines(false);// oculta as linhas verticais da tabela
JScrollPane1.setViewportView(JTableDados);
JPanel2 = new JPanel();
JPanel2.setBorder(javax.swing.BorderFactory.createTitledBorder(javax.swing.BorderFactory.createTitledBorder(null, "", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font("Segoe UI", 0, 11)), "Clientes Cadastrados", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font("Segoe UI", 0, 11)));
JPanel2.setFont(new java.awt.Font("Segoe UI", 0, 11));
JPanel2.setBounds(140, 320, 840, 340);
tela2.add(JPanel2);
try
{
String url = "jdbc:odbc:SVL";
String usuario = "";
String senha = "";
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con;
con = DriverManager.getConnection(url,usuario,senha);
Statement st = con.createStatement();
ResultSet RS = st.executeQuery("SELECT * FROM Clientes");
while(RS.next()){
int ID = RS.getInt(0);
String Nome = RS.getString(1);
modelo.addRow(new Object[]{new Integer(ID), new String(Nome)});
}
con.close();
RS.close();
}
catch(Exception event) {
JOptionPane.showMessageDialog(null,"Não foi possível estabelecer conexão com o banco de dados!","Sistema Vídeo Locadora Versão 1.0.0 - By Fernando Matheus",JOptionPane.ERROR_MESSAGE);
}