Estou tentando salvar no banco de dados um registro de estados, só que ao tentar salvar e apresenta um erro com relacao ao JComboBox que contem as cidades.
Exception in thread "AWT-EventQueue-0" java.lang.ClassCastException: class java.lang.String cannot be cast to class modelo.Cidades (java.lang.String is in module java.base of loader 'bootstrap'; modelo.Cidades is in unnamed module of loader 'app')
at visao.frmEstados.jbSalvarActionPerformed(frmEstados.java:341)
at visao.frmEstados$6.actionPerformed(frmEstados.java:258)
at java.desktop/javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1972)
at java.desktop/javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2313)
at java.desktop/javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:405)
at java.desktop/javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:262)
at java.desktop/javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:279)
at java.desktop/java.awt.Component.processMouseEvent(Component.java:6616)
at java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3398)
at java.desktop/java.awt.Component.processEvent(Component.java:6381)
at java.desktop/java.awt.Container.processEvent(Container.java:2266)
at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:4991)
at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2324)
at java.desktop/java.awt.Component.dispatchEvent(Component.java:4823)
at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4948)
at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4575)
at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4516)
at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2310)
at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2780)
at java.desktop/java.awt.Component.dispatchEvent(Component.java:4823)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:775)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:720)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:714)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:97)
at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:747)
at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:744)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
codigo de como e preenchido a combobox
private void jcbCidadeAncestorAdded(javax.swing.event.AncestorEvent evt) {
// Evento para preencher a combobox com dados banco.
CidadesDao dao = new CidadesDao();
List<Cidades> listacidades = dao.listaCidades();
jcbCidade.removeAll();
for (Cidades c : listacidades) {
jcbCidade.addItem(c.toString());
}
}
Codigo do evento do botao salvar
private void jbSalvarActionPerformed(java.awt.event.ActionEvent evt) {
// Evento para salvar registro no banco
Estados obj = new Estados();
EstadosDao dao = new EstadosDao();
obj.setEstado(jtfEstado.getText());
obj.setUf(jtfUf.getText());
//Criando o objeto cidade
Cidades c = new Cidades();
c = (Cidades) jcbCidade.getSelectedItem();
obj.setCidade(c);
dao.cadastrarEstado(obj);
//limpar campos e bloquear campos
jtfEstado.setText("");
jtfCodEstado.setText("");
jtfEstado.setEnabled(false);
jtfUf.setEnabled(false);
jcbCidade.setEnabled(false);
jbSalvar.setEnabled(false);
jbNovo.setEnabled(true);
jbEditar.setEnabled(false);
jbExcluir.setEnabled(false);
}