Boa tarde,
tenho uma tabela de cadastro de funcionários quando clico em uma linha ela deveria preencher todos os meus textbox e combobox mas ela não preenche as combos UF e Cidade! e também caso o campo data de demissão esteja vazio ele não preenche nenhuma combo!!
o erro abaixo aparece quando não tem data de demissão:
> Exception in thread "AWT-EventQueue-0" java.lang.IllegalArgumentException: Cannot format given Object as a Date
> at java.text.DateFormat.format(DateFormat.java:310)
> at java.text.Format.format(Format.java:157)
> at Visão.Cadastro_funcionarios.jtblFuncionariosMouseClicked(Cadastro_funcionarios.java:1196)
> at Visão.Cadastro_funcionarios.access$1500(Cadastro_funcionarios.java:45)
> at Visão.Cadastro_funcionarios$16.mouseClicked(Cadastro_funcionarios.java:419)
> at java.awt.AWTEventMulticaster.mouseClicked(AWTEventMulticaster.java:270)
> at java.awt.Component.processMouseEvent(Component.java:6528)
> at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
> at java.awt.Component.processEvent(Component.java:6290)
> at java.awt.Container.processEvent(Container.java:2234)
> at java.awt.Component.dispatchEventImpl(Component.java:4881)
> at java.awt.Container.dispatchEventImpl(Container.java:2292)
> at java.awt.Component.dispatchEvent(Component.java:4703)
> at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4898)
> at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4542)
> at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4462)
> at java.awt.Container.dispatchEventImpl(Container.java:2278)
> at java.awt.Window.dispatchEventImpl(Window.java:2750)
> at java.awt.Component.dispatchEvent(Component.java:4703)
> at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
> at java.awt.EventQueue.access$500(EventQueue.java:97)
> at java.awt.EventQueue$3.run(EventQueue.java:709)
> at java.awt.EventQueue$3.run(EventQueue.java:703)
> at java.security.AccessController.doPrivileged(Native Method)
> at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:75)
> at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:86)
> at java.awt.EventQueue$4.run(EventQueue.java:731)
> at java.awt.EventQueue$4.run(EventQueue.java:729)
> at java.security.AccessController.doPrivileged(Native Method)
> at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:75)
> at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
> at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
> at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
> at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
> at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
> at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
> at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
Segue código para preencher a Jtable:
`List Funcionarios = ControleFuncionarios.getInstancefuncionarios().buscarFuncionarios((txtPesquisa.getText()));
DefaultTableModel modelo = new DefaultTableModel();
modelo.addColumn("ID");
modelo.addColumn("Registro");
modelo.addColumn("Nome");
modelo.addColumn("Situação");
modelo.addColumn("Demissão");
modelo.addColumn("Admissão");
modelo.addColumn("RG");
modelo.addColumn("CPF");
modelo.addColumn("Nascimento");
modelo.addColumn("Endereço");
modelo.addColumn("Numero");
modelo.addColumn("Bairro");
modelo.addColumn("Cidade");
modelo.addColumn("Uf");
modelo.addColumn("CEP");
modelo.addColumn("Telefone");
modelo.addColumn("Celular");
modelo.addColumn("Salario");
modelo.addColumn("CTPS");
modelo.addColumn("Cargo");
modelo.addColumn("Setor");
modelo.addColumn("Sindicato");
jtblFuncionarios.setModel(modelo);
jtblFuncionarios.setAutoResizeMode(jtblFuncionarios.AUTO_RESIZE_OFF);
jtblFuncionarios.getColumnModel().getColumn(0).setPreferredWidth(25);
jtblFuncionarios.getColumnModel().getColumn(1).setPreferredWidth(40);
jtblFuncionarios.getColumnModel().getColumn(2).setPreferredWidth(200);
jtblFuncionarios.getColumnModel().getColumn(3).setPreferredWidth(90);
jtblFuncionarios.getColumnModel().getColumn(4).setPreferredWidth(75);
jtblFuncionarios.getColumnModel().getColumn(5).setPreferredWidth(90);
jtblFuncionarios.getColumnModel().getColumn(6).setPreferredWidth(200);
jtblFuncionarios.getColumnModel().getColumn(7).setPreferredWidth(40);
jtblFuncionarios.getColumnModel().getColumn(8).setPreferredWidth(80);
jtblFuncionarios.getColumnModel().getColumn(9).setPreferredWidth(40);
jtblFuncionarios.getColumnModel().getColumn(10).setPreferredWidth(75);
jtblFuncionarios.getColumnModel().getColumn(11).setPreferredWidth(200);
jtblFuncionarios.getColumnModel().getColumn(12).setPreferredWidth(75);
jtblFuncionarios.getColumnModel().getColumn(13).setPreferredWidth(75);
jtblFuncionarios.getColumnModel().getColumn(14).setPreferredWidth(69);
jtblFuncionarios.getColumnModel().getColumn(15).setPreferredWidth(200);
jtblFuncionarios.getColumnModel().getColumn(16).setPreferredWidth(40);
jtblFuncionarios.getColumnModel().getColumn(17).setPreferredWidth(80);
jtblFuncionarios.getColumnModel().getColumn(18).setPreferredWidth(200);
jtblFuncionarios.getColumnModel().getColumn(19).setPreferredWidth(75);
jtblFuncionarios.getColumnModel().getColumn(20).setPreferredWidth(75);
jtblFuncionarios.getColumnModel().getColumn(21).setPreferredWidth(75);
int y = 1;
for (ModeloFuncionarios i : Funcionarios) {
modelo.addRow(new Object[]{i.getCod_funcionario(), i.getRegistro(),i.getNome(), i.getCodSituacao(),i.getDemissao(),
i.getAdmissao(), i.getRg(),i.getCpf(), i.getDatanascimento(),i.getRua(),i.getNumero(),i.getBairro(),i.getCidade(), i.getEstado(), i.getCep(),
i.getTelefone(), i.getCelular(), i.getSalario(),i.getCtps(),i.getCodFuncao(), i.getCodSetor(), i.getCodSindicato(),});
// jpb1.setValue(y);
y++;
}
jtblFuncionarios.removeAll(); // LIMPA O CONTEUDO DA TABELA
jtblFuncionarios.setModel(modelo);
btnAlterar1.setEnabled(false);
btnCancelar.setEnabled(false);
btnExcluir.setEnabled(false);
btnSalvar.setEnabled(false);
btnNovo.setEnabled(true);
codigo que preenche as combos e textbox:
` int linhaSelecionada = jtblFuncionarios.getSelectedRow(); //retorna a linha selecionada
SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy");
txtId.setEnabled(false);
txtBairro.setEnabled(true);
txtAdmissão.setEnabled(true);
txtNome.setEnabled(true);
txtCelular.setEnabled(true);
txtCep.setEnabled(true);
txtCpf.setEnabled(true);
txtCtps.setEnabled(true);
txtDemissao.setEnabled(true);
txtEndereco.setEnabled(true);
txtId.setEnabled(true);
txtNascimento.setEnabled(true);
txtRegistro.setEnabled(true);
txtRg.setEnabled(true);
txtSalario.setEnabled(true);
txtTelefone.setEnabled(true);
txtNumero.setEnabled(true);
txtAdmissão.setText(sdf.format(jtblFuncionarios.getValueAt(linhaSelecionada, 5)));
txtBairro.setText("" + jtblFuncionarios.getValueAt(linhaSelecionada, 11));
txtCelular.setText("" + jtblFuncionarios.getValueAt(linhaSelecionada, 16));
txtCep.setText("" + jtblFuncionarios.getValueAt(linhaSelecionada, 14));
txtCpf.setText("" + jtblFuncionarios.getValueAt(linhaSelecionada, 7));
txtCtps.setText("" + jtblFuncionarios.getValueAt(linhaSelecionada, 18));
txtDemissao.setText(sdf.format(jtblFuncionarios.getValueAt(linhaSelecionada, 4)));
txtEndereco.setText("" + jtblFuncionarios.getValueAt(linhaSelecionada, 9));
txtId.setText("" + jtblFuncionarios.getValueAt(linhaSelecionada, 0));
txtNascimento.setText("" + jtblFuncionarios.getValueAt(linhaSelecionada, 8));
txtNome.setText("" + jtblFuncionarios.getValueAt(linhaSelecionada, 2));
txtRegistro.setText("" + jtblFuncionarios.getValueAt(linhaSelecionada, 1));
txtRg.setText("" + jtblFuncionarios.getValueAt(linhaSelecionada, 6));
txtSalario.setText("" + jtblFuncionarios.getValueAt(linhaSelecionada, 17));
txtTelefone.setText("" + jtblFuncionarios.getValueAt(linhaSelecionada,15 ));
txtNumero.setText("" + jtblFuncionarios.getValueAt(linhaSelecionada,10 ));
//Encontrando a Posição dentro do List
int i = 0;
while(!listaCidade.get(i).getNome_cidade().equals(jtblFuncionarios.getValueAt(linhaSelecionada, 12)))
{
i++;
}
cmbCidade.setSelectedIndex(i);
i = 0;
while(!listaUf.get(i).getNome_uf().equals(jtblFuncionarios.getValueAt(linhaSelecionada, 13)))
{
i++;
}
cmbUf.setSelectedIndex(i);
i = 0;
while(!listaCargo.get(i).getNome().equals(jtblFuncionarios.getValueAt(linhaSelecionada, 19)))
{
i++;
}
cmbCargo.setSelectedIndex(i);
i = 0;
while(!listaSetor.get(i).getSetor().equals(jtblFuncionarios.getValueAt(linhaSelecionada, 20)))
{
i++;
}
cmbSetor.setSelectedIndex(i);
i = 0;
while(!listaSindicato.get(i).getSindicato().equals(jtblFuncionarios.getValueAt(linhaSelecionada, 21)))
{
i++;
}
cmbSindicato.setSelectedIndex(i);
i = 0;
while(!listaSituacao.get(i).getSituacao().equals(jtblFuncionarios.getValueAt(linhaSelecionada, 3)))
{
i++;
}
cmbSituacao.setSelectedIndex(i);
cmbCidade.setEnabled(true);
cmbCargo.setEnabled(true);
cmbSetor.setEnabled(true);
cmbSindicato.setEnabled(true);
cmbSituacao.setEnabled(true);
cmbUf.setEnabled(true);
btnAlterar1.setEnabled(true);
btnCancelar.setEnabled(true);
btnExcluir.setEnabled(true);
btnSalvar.setEnabled(false);
btnNovo.setEnabled(true);``