devo fare inserimento in un db mysql:
tra i vari parametri ho due presi da due combobox.
Autori:
codice:
public class Author {
private int id;
private String name;
public Author(int id, String name) {
this.id = id;
this.name = name;
}
public int getAId() {
return id;
}
@Override
public String toString() {
return name;
}
}
Editori:
codice:
public class Editor {
private int id;
private String name;
public Editor(int id, String name) {
this.id = id;
this.name = name;
}
public int getEId() {
return id;
}
@Override
public String toString() {
return name;
}
}
le riempio così:
codice:
private void fillEditor() throws SQLException, ClassNotFoundException {
comboEditor.removeAllItems();
comboEditor.addItem("*");
ArrayList listE = DoFillEditor.fillEditor();
for (Object objE : listE) {
comboEditor.addItem(objE);
}
}
private void fillAuthor() throws SQLException, ClassNotFoundException {
comboAuthor.removeAllItems();
comboAuthor.addItem("*");
ArrayList listA = DoFillAuthor.fillAuthor();
for (Object objA : listA) {
comboAuthor.addItem(objA);
}
}
il problema è che quando vado clicco sul pulsante di inserimento mi compare sempre questo messaggio:
codice:
Exception in thread "AWT-EventQueue-0" java.lang.ClassCastException: models.Author cannot be cast to models.Editor
at frame.Main.btnAddBookActionPerformed(Main.java:578)
at frame.Main.access$900(Main.java:11)
at frame.Main$9.actionPerformed(Main.java:259)
.......
queste sono le righe che interessano:
codice:
.....
Author author = (Author) comboAuthor.getSelectedItem();
int author_id = author.getAId();
Editor editor = (Editor) comboEditor.getSelectedItem();
int editor_id = editor.getEId();
DoInsert.insert(name.toLowerCase().trim(), author_id, editor_id, price, isbn.toLowerCase().trim(), note.trim());
.......
la riga 578 è quella che riguarda l'Editor.
nn riesco a capire dove sbaglio.