Boa tarde a todos!
Estou com a seguinte situação:
Tenho 3 JComboBox: País, Estado, Cidade.
No combo país tenho só Brasil.
Mas no como Estado, onde tenho todos os estados do Brasil, quero fazer com que, ao clicar em algum, fazer a busca das cidades daquele estado para listar no combo Cidade.
Fiz o seguinte até agora:
Ao iniciar o JFrame:private void loadEstados() {
List<Estado> estados = new ArrayList<>();
EstadoJpaController estadoJpa = new EstadoJpaController();
estados.addAll(estadoJpa.findEstadoEntities());
for (int i = 0; i < estados.size(); i++) {
Estado est = estados.get(i);
cEstados.addItem(est.getNome());
}
}
private void loadCidades() {
List<Cidade> cidades = new ArrayList<>();
CidadeJpaController cidJpa = new CidadeJpaController();
cidades.addAll(cidJpa.findCidadeEntities());
for (int i = 0; i < cidades.size(); i++) {
Cidade cid = cidades.get(i);
cCidades.addItem(cid.getNome());
}
}
private void cEstadosItemStateChanged(java.awt.event.ItemEvent evt) {
CidadeJpaController cidadeJpa = new CidadeJpaController();
List<Cidade> listCid;
try {
listCid = cidadeJpa.findCidadeByEstado(((Estado) cEstados.getSelectedItem()));
cCidades.removeAllItems();
Iterator<Cidade> i = listCid.iterator();
while (i.hasNext()) {
cCidades.addItem(i.next());
}
} catch (Exception e) {
System.out.println(e);
}
}
listCid = cidadeJpa.findCidadeByEstado(((Estado) cEstados.getSelectedItem()));
Tenho o seguinte erro:
java.lang.ClassCastException: java.lang.String cannot be cast to modelo.Estado
O método getSelectedItem() retorna um Object e eu estou o convertendo para Estado.. Por que está dando esse erro ? :(
Valeu!
