devo fare inserimento in un db mysql:
tra i vari parametri ho due presi da due combobox.
Autori:
Editori: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; } }
le riempio così: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; } }
il problema è che quando vado clicco sul pulsante di inserimento mi compare sempre questo messaggio: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); } }
queste sono le righe che interessano: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) .......
la riga 578 è quella che riguarda l'Editor.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()); .......
nn riesco a capire dove sbaglio.

Rispondi quotando
