Serialisiertes Object geht nicht zu Inizialisieren

Status
Nicht offen für weitere Antworten.
F

Fitmann

Gast
Hallo zusammen,
ich bin kurz vorm verzweifeln... ich habe ein object der klasse Element serialisiert, jetz möchte ich es wieder öffnen, und dabei tritt dieser fehler auf:
Code:
java.io.InvalidClassException: ElementEditor.Element; local class incompatible: stream classdesc serialVersionUID = -5990654571048507490, local class serialVersionUID = 911629704542894045
	at java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:546)
	at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1552)
	at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1466)
	at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1699)
	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1305)
	at java.io.ObjectInputStream.readObject(ObjectInputStream.java:348)
	at ElementEditor.ELogik.loadElement(ELogik.java:60)
	at ElementEditor.EGUI.mouseReleased(EGUI.java:122)
	at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:232)
	at java.awt.Component.processMouseEvent(Component.java:5501)
	at javax.swing.JComponent.processMouseEvent(JComponent.java:3135)
	at java.awt.Component.processEvent(Component.java:5266)
	at java.awt.Container.processEvent(Container.java:1966)
	at java.awt.Component.dispatchEventImpl(Component.java:3968)
	at java.awt.Container.dispatchEventImpl(Container.java:2024)

ich komm einfach nicht dahinter, es sind die gleichen klassen, vieleicht sieht ja einer von euch den fehler ^^

... das ist die mehthode zum serialisieren:
Code:
void saveElement(String name) {

		try {
			FileOutputStream fo = new FileOutputStream(new File(name + ".el"));
			ObjectOutputStream oos;
			try {
				oos = new ObjectOutputStream(fo);
				oos.writeObject(new Element(name, images));
				oos.close();
			} catch (IOException e1) {
				// TODO Automatisch erstellter Catch-Block
				e1.printStackTrace();
			}
		} catch (FileNotFoundException e) {
			// TODO Automatisch erstellter Catch-Block
			e.printStackTrace();
		}
	}

das ist die methode zum inizialisieren:
Code:
Element loadElement(File file) {
		Element element = null;
		if (file.exists()) {
			try {
				FileInputStream fis = new FileInputStream(file);
				try {
					ObjectInputStream ois = new ObjectInputStream(fis);
					try {
						element =(Element) ois.readObject();
						ois.close();
					} catch (ClassNotFoundException e) {
						// TODO Automatisch erstellter Catch-Block
						e.printStackTrace();
					}
				} catch (IOException e) {
					// TODO Automatisch erstellter Catch-Block
					e.printStackTrace();
				}
			} catch (FileNotFoundException e) {
				// TODO Automatisch erstellter Catch-Block
				e.printStackTrace();
			}
			return element;
		} else
			return null;
	}
 

André Uhres

Top Contributor
Hier noch ein wichtiger Tipp: Die "serialVersionUID" muss als Feld zu allen Klassen hinzugefügt werden, die gespeichert
werden sollen, sonst erscheint bei der geringsten Programmänderung eine Fehlermeldung und das Programm
kann mit dem gespeicherten Objekt nicht mehr gestartet werden! Beispiel:
Code:
private static final long serialVersionUID = 7526472295622776147L;
 
F

Fitmann

Gast
@Wildcard ach wirklich? ^^
die frage ist aber warum... es sind beides die gleichen klassen... sie implementieren serialzeable... ich hab das vorher mit einfachen objekten die nur string beinhalten geprüft und da hat es funktioniert.
 

Wildcard

Top Contributor
Serialisierung ist sehr unflexibel und nicht als dauerhafte Persistierung gedacht.
Stell dir vor du serialisierst ein Objekt einer Klasse, änderst die Klasse (entfernst einige Felder) und versuchst anschließend das alte Objekt wieder einzulesen.
Es kann natürlich nicht funktionieren.
Daher bekommt jede Klasse eine SerialVersionUID (wenn du keine angibst generiert Java eine).
Passt die ID des serialisierten Objekts nicht zur aktuell geladenen Klasse fliegt die Exception die du bekommen hast.
Bei jeder minimalen Änderung einer Klasse ändert sich allerdings auch die automatisch vergebene ID.
Der Entwickler ist deshald dazu angehalten explizit eini solche ID zu vergeben damit er selbst bestimmen kann ab wann eine Klasse inkompatibel zu ihren vorher serialisierten Objekten wird.
 
F

Fitmann

Gast
ich werde es jetz damit ausprobieren, konnte das gestern nicht mehr weil alles auf der arbeit ist... schonma danke für diese infos... zum thme seriallisierung hab ich noch nicht viel gemacht. :D
 
F

Fitmann

Gast
Jawoll wunderbar es funzt einwandfrei... dankeschön ihr leud :D :D
 
F

Fitmann

Gast
Naja es funzt doch nicht so ganz... ich serialisiere ja ein objekt namens elements, welches einen imageicon arry beinnhaltet, in diesem arry sind animierte gifs abgelegt... das serialisieren und inizialisieren funzt wunderbar... nur scheint dieser vorgang auf irgendeine art und weise die gifs dahingehend zu rendern, das die animation weg ist... lediglich das erste bild der animation wird abgebildet...

wisst ihr woran das liegt?
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
K TableView: 'Komplexes' Object AWT, Swing, JavaFX & SWT 11
S 3D-Grafik Marker zu aus Screen anvisiertem Object AWT, Swing, JavaFX & SWT 1
Paul15 ActionListen auf Object in main AWT, Swing, JavaFX & SWT 7
L Swing Object aus JTable AWT, Swing, JavaFX & SWT 1
S 3D Object Viewer AWT, Swing, JavaFX & SWT 13
R Graphics-Object speichern AWT, Swing, JavaFX & SWT 4
J 2D-Grafik Graphics2D object in ein anderes Zeichnen AWT, Swing, JavaFX & SWT 7
M Object[][] in double[][] casten AWT, Swing, JavaFX & SWT 6
D Object mit JTable verknüpfen AWT, Swing, JavaFX & SWT 7
A Swing Drag and Drop TreeNode User Object AWT, Swing, JavaFX & SWT 3
D JTree - Zugriff auf Nodes mit Object AWT, Swing, JavaFX & SWT 6
N JComboBox mit Custom Object AWT, Swing, JavaFX & SWT 2
D JRadioButton Object AWT, Swing, JavaFX & SWT 2
L JTable SelectRowByValue(Object Value)? AWT, Swing, JavaFX & SWT 3
F invokeLater() vs synchronized(Object) AWT, Swing, JavaFX & SWT 5
G Image Object speichern oder in ein BufferedImage umwandeln AWT, Swing, JavaFX & SWT 2
P Wie das Component Object des Hauptfensters ermitteln? AWT, Swing, JavaFX & SWT 4
J Nochmal Drag&Drop, ABER: Object verschieben AWT, Swing, JavaFX & SWT 2
S Object auf Knopfdruck dem Frame hinzufügen AWT, Swing, JavaFX & SWT 2
F polygon object "stirbt" vor Ausführung in paint() AWT, Swing, JavaFX & SWT 4
S Object in Color umwandeln AWT, Swing, JavaFX & SWT 2
M drag and drop a object in swt AWT, Swing, JavaFX & SWT 2
M JTree Elemete zeigen nach 2. Mausklick Object an. Warum? AWT, Swing, JavaFX & SWT 2
M Warum wird Graphics-Object zerstört? AWT, Swing, JavaFX & SWT 8
T object in tabelle AWT, Swing, JavaFX & SWT 2
komplettlost Vollbildmodus für MacOs Nutzer geht nicht AWT, Swing, JavaFX & SWT 13
B Swing Menü geht nicht AWT, Swing, JavaFX & SWT 5
izoards Bild ausdrucken - PageFormat setzen geht nicht AWT, Swing, JavaFX & SWT 5
J import javafx.fxml* bei JavaFX 13 geht nicht mehr AWT, Swing, JavaFX & SWT 7
S PatentComponent geht nicht? AWT, Swing, JavaFX & SWT 3
H automatische Anzahl der Spalten ermitteln -> geht nicht AWT, Swing, JavaFX & SWT 6
B JavaFX Wo liegt mein Gedankenfehler ??? KeyEvent geht nicht ... AWT, Swing, JavaFX & SWT 8
J Warum geht das nicht? if-else usw..... compilieren geht nicht -- HILFE!!! AWT, Swing, JavaFX & SWT 10
LexeB4F setValueAT geht nicht... wieso? AWT, Swing, JavaFX & SWT 14
T JLabel in die Mitte(JLabel.CENTER geht nicht) AWT, Swing, JavaFX & SWT 12
X Swing JButton's zum JScrollPane hinzufügen geht nicht. Bitte um Hilfe. AWT, Swing, JavaFX & SWT 9
F Swing String[] in JTextArea ausgeben. Jeder Eintrag in neue Zeile, aber ohne "\n"- Geht das? AWT, Swing, JavaFX & SWT 3
B Swing Form undecorated: Beim Bewegen geht die Maus immer automatisch zur linken Seite. AWT, Swing, JavaFX & SWT 7
I JavaFX - MP3 geht nicht AWT, Swing, JavaFX & SWT 4
N gewünschte ActionListener bei RadioButton mit isSelected geht nicht AWT, Swing, JavaFX & SWT 2
C Swing Update von swing-TableModels per Thread. Eins geht, das andere nicht, warum? AWT, Swing, JavaFX & SWT 12
S KeyListener geht nicht AWT, Swing, JavaFX & SWT 12
B JInternalFrame Focus setzten geht nicht AWT, Swing, JavaFX & SWT 2
D Swing fullscreen switch geht nicht richtig AWT, Swing, JavaFX & SWT 8
F Icongröße ändern, geht das ? AWT, Swing, JavaFX & SWT 2
Q Swing MouseListener auf JTable geht nicht AWT, Swing, JavaFX & SWT 2
0 JTable Spaltenbreite automatisch an Inhalt anpassne geht nicht AWT, Swing, JavaFX & SWT 3
antonbracke Multiplayer Shooter- Wie geht das mit Canvas & Graphics AWT, Swing, JavaFX & SWT 6
K Options-Frame integrieren (zum zuschalten und wegschalten wie geht man da ran? AWT, Swing, JavaFX & SWT 7
R JTextField mit abgerundeten Ecken - Geht über Grenze hinaus AWT, Swing, JavaFX & SWT 4
B Java und ansprechende Benutzeroberflächen - geht das? AWT, Swing, JavaFX & SWT 16
V Swing Custom JToggleButton in JTable - Click-Event geht erst beim zweiten Mal AWT, Swing, JavaFX & SWT 7
C Java2D Transparenz geht bei einfärben verloren AWT, Swing, JavaFX & SWT 7
T transparent geht nicht (btw: rechteck) AWT, Swing, JavaFX & SWT 13
E Null-Layout - Wie geht es ohne? AWT, Swing, JavaFX & SWT 19
Y LookAndFeel Nimbus einschalten geht nicht AWT, Swing, JavaFX & SWT 31
M Bild aus .jar Archiv laden geht nicht AWT, Swing, JavaFX & SWT 6
L Stopp Button geht nicht AWT, Swing, JavaFX & SWT 2
S JDesktopPane bei Button-Klick anzeigen geht nicht AWT, Swing, JavaFX & SWT 5
D JList Scrollbar machen geht nicht AWT, Swing, JavaFX & SWT 4
J Label mit transparentem hintergrund - geht das? AWT, Swing, JavaFX & SWT 21
H Sub-Dialog von modalem JDialog aus aufrufen - geht das? AWT, Swing, JavaFX & SWT 6
B Panels stapeln, geht das? AWT, Swing, JavaFX & SWT 7
P SetBounds auf JPanel geht nicht! AWT, Swing, JavaFX & SWT 2
S SWT Composite mit Layout Manager geht nicht AWT, Swing, JavaFX & SWT 4
S JPanel geht über Rand hinaus AWT, Swing, JavaFX & SWT 7
E setAlwaysOnTop geht verloren AWT, Swing, JavaFX & SWT 3
B Swing Variable in JTextfield geht nicht AWT, Swing, JavaFX & SWT 10
B Swing setDefaultButton geht nicht - Komponente fängt Events ab AWT, Swing, JavaFX & SWT 5
M FileFilter geht nicht AWT, Swing, JavaFX & SWT 5
A repaint() geht nicht ? AWT, Swing, JavaFX & SWT 5
D Jlist auf 10 Zeilen begrenzen geht bei mir nicht AWT, Swing, JavaFX & SWT 2
D Runtime.getRuntime.exec() + SWT oder Swing = geht nicht AWT, Swing, JavaFX & SWT 2
M Action.DISPLAYED_MNEMONIC_INDEX_KEY geht nicht mehr AWT, Swing, JavaFX & SWT 2
F JScrollPane setLayout geht nicht AWT, Swing, JavaFX & SWT 2
R MVC: System.out.prinln in View umleiten geht nicht richtig AWT, Swing, JavaFX & SWT 7
B MouseListener / doppelklick geht net AWT, Swing, JavaFX & SWT 16
G JToggleButton pressed geht nicht AWT, Swing, JavaFX & SWT 2
G setLocationRelativeTo(frame) geht plötzlich nicht mehr AWT, Swing, JavaFX & SWT 3
G fireTableDataChanged() geht das auch ohne vector? AWT, Swing, JavaFX & SWT 13
Z Buttons erscheinen erst wenn man mit der Maus drüber geht AWT, Swing, JavaFX & SWT 7
P GridBagLayout einfaches Beispiel geht nicht? AWT, Swing, JavaFX & SWT 5
I Tastur eingabe geht nicht (wenn Button vorhanden) AWT, Swing, JavaFX & SWT 5
W Swing, 2 JProgressbars und threads geht das? AWT, Swing, JavaFX & SWT 2
X JTable "geht" erst beim 2.Klick AWT, Swing, JavaFX & SWT 2
I JRadioButton disablen geht nicht AWT, Swing, JavaFX & SWT 4
M Wieso geht das nicht! AWT, Swing, JavaFX & SWT 3
G JDialog hinter Glasspane von JFrame. Geht das? AWT, Swing, JavaFX & SWT 3
P [SWT] - ProgressBar, Prozentzahlen live anzeigen geht nicht AWT, Swing, JavaFX & SWT 13
W netbeans projekt in Eclipse importieren -gui teil geht nicht AWT, Swing, JavaFX & SWT 5
V JTable - farbige Boolean-Felder - geht das? AWT, Swing, JavaFX & SWT 3
O Panels ein und ausblenden - geht das? AWT, Swing, JavaFX & SWT 3
T Look and Feel ändern geht nicht, obwohl es geht. AWT, Swing, JavaFX & SWT 2
K setSize und setLocation geht nicht AWT, Swing, JavaFX & SWT 8
S JFileChooser Pfadübergabe mit Leerzeichen geht nicht AWT, Swing, JavaFX & SWT 6
G Warum geht das nicht? AWT, Swing, JavaFX & SWT 3
S JScrollPane in einem JDialog = geht nicht? AWT, Swing, JavaFX & SWT 14
B Layoutvorgabe: Geht so was überhaupt? AWT, Swing, JavaFX & SWT 5
S Animation geht nicht AWT, Swing, JavaFX & SWT 3
S JLabel zeilenumbruch ? geht das in JDialog? AWT, Swing, JavaFX & SWT 2

Ähnliche Java Themen

Neue Themen


Oben