Probleme beim Serialisieren mit JOptionPane

Status
Nicht offen für weitere Antworten.

chaotica

Mitglied
Hallo,

ich bekomme folgende Fehlermeldung beim Serialisieren meiner Anwedung:
Code:
javax.swing.plaf.basic.BasicOptionPaneUI$ButtonAreaLayout

Obwohl meine JOptionPane static ist und eigentlich nicht serialisiert werden sollte, Oder :?:
 

Leroy42

Top Contributor
Code:
javax.swing.plaf.basic.BasicOptionPaneUI$ButtonAreaLayout

Das ist keine Fehlermeldung! :autsch:
 

chaotica

Mitglied
Diese "Fehlermeldung" ist die ExceptionMessage welche gecatcht wird und sie tritt erst auf, wenn bei zurueckgeladene Anwendung nochmals serialisiert wird.
Bei der ersten Serialisierung gibt´s keine Exception!

Woran kann das liegen?

Code:
		try
		 {
		 FileOutputStream fos=new FileOutputStream(dateiName);
		 ObjectOutputStream oos=new ObjectOutputStream(fos);
		 oos.writeObject(MyFrame.this);
		 //oos.flush();
		 oos.close();
		 System.out.println("In Datei geschrieben!");
		 }
	      catch(Exception ex)
		 {
		 System.out.println("Fehler bei write: '"+ex.getMessage() +"'");
		 }
 

Leroy42

Top Contributor
und es ist immer noch keine Fehlermeldung sondern nur ein Klassenname!

Wo bitte ist denn der Text: "Fehler bei write: "
wenn es sich um die Ausgabe dieses catch-Blocks handelt?
Code:
 catch(Exception ex) 
       { 
       System.out.println("Fehler bei write: '"+ex.getMessage() +"'"); 
       }
 

chaotica

Mitglied
Den Text "Fehler bei write" hatte ich nicht mitkopiert, sorry.

Die o.g. Meldung kommt beim Serialisierungsvorgang (die Anwendung läuft).
Nachdem diese Meldung auf der Konsole angezeigt wurde, kann die Anwendung nicht mehr deserialisiert werden.

Folgende Meldung tritt dann während des Deserialisierungsvorgangs auf. Also beim Neustart der Anwendung.


Code:
Main: Fehler bei read:'writing aborted; java.io.NotSerializableException: javax.swing.plaf.basic.BasicOptionPaneUI$ButtonAreaLayout'

Code:
			try{
			 FileInputStream fis=new FileInputStream("Daten.ser");
			 ObjectInputStream ois=new ObjectInputStream(fis);
			 MyFrame=(MyFrame)ois.readObject();
			 MyFrame.setVisible(true);
			 ois.close();
			 System.out.println("Main: Aus Datei gelesen!");
			 }
		      catch(Exception ex)
			 {
			 System.out.println("Main: Fehler bei read:'"+ex.getMessage()+"'");
			 }
 

Leroy42

Top Contributor
Also NotSerializableException.

Warum nicht gleich so? :cool:

Das heißt daß du eine Instanz hast, die nicht serialisierbar ist.

Die mußt du dann als transient deklarieren.

JLS : transient
 

chaotica

Mitglied
Die JOptionPane habe ich transient static gesetzt, sollte also eigentlich nicht serialisiert werden.

Code:
private transient static JOptionPane dateiPane = new JOptionPane("Dateiname:", JOptionPane.QUESTION_MESSAGE,JOptionPane.OK_CANCEL_OPTION);
static {dateiPane.setWantsInput(true);}

Leider ohne Erfolg.

Code:
public void serialize() {
		try
		 {
		JDialog dateiDialog = dateiPane.createDialog(MyFrame.this, null);
		dateiDialog.setVisible(true);
		Object val=dateiPane.getValue();
		if(!(val instanceof Integer)) return;
		int action=((Integer)val).intValue();
		if(action!=JOptionPane.OK_OPTION) return;
		String datei=(String)dateiPane.getInputValue();

		FileOutputStream fos=new FileOutputStream(datei);
		ObjectOutputStream oos=new ObjectOutputStream(fos);
		oos.writeObject(MyFrame.this);
		oos.close();
		System.out.println("In Datei geschrieben!");
		 }
	      catch(Exception ex)
		 {
		 System.out.println("Fehler bei write:'"+ex.getMessage() +"'  Class:'" + ex.getClass()+"'");
		 }		
	}
||
||
\/
Code:
Fehler bei write:'javax.swing.plaf.basic.BasicOptionPaneUI$ButtonAreaLayout'  Class:'class java.io.NotSerializableException'
 

Leroy42

Top Contributor
Dann sehe ich nur den Weg, das du deine GUI sauber von
deiner Anwendung (Datenmodell) trennst (wie es ja auch eigentlich der Fall sein sollte :cool: ),
sodaß Java beim Speichern deiner Anwendung gar nicht in
die Versuchung kommt, GUI-Komponenten mitzuspeichern.

Das gleiche habe ich übrigens schon mal in einem Programm gemacht,
daß Rechnungen verwaltet und alle Daten serialisiert.
 

chaotica

Mitglied
Hallo nochmal,

Danke zunächst für Deine Mühe :D

Aber bevor ich mein ganzes Programm abfackel um aus den Resten nen neues zu stricken versuch ich´s weiter.
Es kann doch nicht angehen, dass eine JOptionPane so querschießt! ???:L

Wenn ich die JOptionPane auskommentiere, gibt es auch keine Fehlermeldungen mehr.
Da muß es doch ne Lösung geben :!:
 

Leroy42

Top Contributor
Und wenn du deine JOptionPane nicht static hältst, sondern
sie jeweils in den Methoden, in denen du sie auch benötigst,
neu erzeugst oder einfach als Klasseninstanz hältst? ???:L
 

chaotica

Mitglied
Hallo Leroy42,

Ich hab´s just probiert

ABER
Code:
Fehler bei write: 'javax.swing.plaf.basic.BasicOptionPaneUI$ButtonAreaLayout' Class: 'class java.io.NotSerializableException'
:?

Das gibts doch nicht!
Sowas muß doch irgendwo dokumentiert sein. Ich find zu der Meldung bzw. zum Problem aber nix.:###
Bin ich der einzige, der versucht ne Anwendung zu serialisieren, die n´Dialog nutzt? :bahnhof:

Es scheint ja ein generelles Problem zu sein, oder?
 

chaotica

Mitglied
Nach diversen Versuchen, hat sich herausgestellt, dass das Problem mit der JOptionPane zu tun hat.

Die Exception
Code:
java.io.NotSerializableException
tritt nur auf, wenn der Dialog mittels JOptionPane erzeugt wurde.
Code:
JOptionPane fehlerPane = new JOptionPane();
fehlerPane.setMessage(fehlerMeldungen[i]);
JDialog fehlerDialog = fehlerPane.createDialog(ConvertFrame.this, null);
fehlerDialog.setVisible(true);
Serialisiert man das Frame und deserialisiert es, klappt noch alles wie geplant.
Bei erneuter Serialisierung tritt die Exception auf.

Wenn ich ein JDialog OHNE JOptionPane nutze, gibt es keine Probleme.

Code:
JDialog jd = new JDialog (this,"blah blah");
jd .setVisible(true);
jd .setDefaultCloseOperation(DISPOSE_ON_CLOSE);

Vielleicht liegt da ja der Hund begraben? :bahnhof:

Für jeden Lösungsansatz bin ich dankbar. :D
 

chaotica

Mitglied
:?
Keine Lösung?

Hab auch keine gefunden :###

Jetzt habe ich ersatzweise ein eigenen JDialog erweitert, der tut´s auch.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
I Probleme beim Drucken auf einen PDF-Drucker AWT, Swing, JavaFX & SWT 8
D JavaFX Probleme beim nachtäglichen hinzufügen der jfx dependency AWT, Swing, JavaFX & SWT 7
B 2D-Grafik paintcomponent Probleme beim zeichnen AWT, Swing, JavaFX & SWT 10
L JavaFX Probleme beim Installieren JavaFX11 / JavaFX12 -- Eclipse 2019-03 AWT, Swing, JavaFX & SWT 3
H JavaFX Probleme Beim Wechseln der scene als .fxml AWT, Swing, JavaFX & SWT 7
F JavaFX Probleme beim automatischen Konvertieren AWT, Swing, JavaFX & SWT 4
T Java FX Probleme beim befüllen eines Tableviews AWT, Swing, JavaFX & SWT 5
S AWT Probleme beim Zeichnen AWT, Swing, JavaFX & SWT 3
K Probleme beim JPasswordField AWT, Swing, JavaFX & SWT 11
D JavaFX Probleme bei Service-Klasse beim ändern der GUI AWT, Swing, JavaFX & SWT 8
K Probleme beim zeichnen mit paintComponent() AWT, Swing, JavaFX & SWT 1
C Java FX Probleme beim Schließen einer Stage AWT, Swing, JavaFX & SWT 11
H Swing Probleme beim erstellen eines neuen Objektes durch einen Button AWT, Swing, JavaFX & SWT 10
N 2D-Grafik 2 Probleme beim zeichnen AWT, Swing, JavaFX & SWT 18
C SWT probleme beim einbinden von Images AWT, Swing, JavaFX & SWT 2
S Probleme beim drucken AWT, Swing, JavaFX & SWT 13
D Swing Probleme beim Anzeigen der einzelnen Komponenten AWT, Swing, JavaFX & SWT 16
N Probleme beim positionieren von Elementen AWT, Swing, JavaFX & SWT 2
A Probleme beim FocusListener AWT, Swing, JavaFX & SWT 6
L Probleme beim Refresh von JTable AWT, Swing, JavaFX & SWT 7
S Swing Probleme beim Aktualisieren einer JComboBox nach Auswahländerung AWT, Swing, JavaFX & SWT 2
K JList-Probleme beim Hinzufügen von Elementen AWT, Swing, JavaFX & SWT 3
P Swing Probleme beim Zeichen AWT, Swing, JavaFX & SWT 6
O Probleme beim Zeichnen und AWT-Event-Queue-0 Exception AWT, Swing, JavaFX & SWT 5
A Probleme beim Drucken AWT, Swing, JavaFX & SWT 5
R Probleme beim Zeichnen eines Koordinatensystems AWT, Swing, JavaFX & SWT 10
M Probleme beim Bild einfügen in CenterPanel AWT, Swing, JavaFX & SWT 5
A Probleme beim Drucken (Seite wird abgeschnitten) AWT, Swing, JavaFX & SWT 2
S Probleme beim Neuzeichnen eines JLabels AWT, Swing, JavaFX & SWT 6
W Probleme beim Erstellen einer Tabelle AWT, Swing, JavaFX & SWT 2
T Probleme beim Resizen einer JScrollPane AWT, Swing, JavaFX & SWT 2
M Probleme beim Hinzufügen von Objekten zu getContentPane() AWT, Swing, JavaFX & SWT 2
G Probleme beim Panelstruktur AWT, Swing, JavaFX & SWT 13
E Probleme beim Layout! AWT, Swing, JavaFX & SWT 8
E Probleme beim Layout mit Buttons und CheckboxGroup AWT, Swing, JavaFX & SWT 9
S Probleme beim Laden und Speichern von Dateien AWT, Swing, JavaFX & SWT 6
C Habe Probleme beim Bild laden! *Update 30.11.2006* AWT, Swing, JavaFX & SWT 28
C Probleme beim ausführen von Programmen mit Fenstern+Inhalt AWT, Swing, JavaFX & SWT 3
Q JTextPane / Probleme beim Einfügen von <br>-Tags AWT, Swing, JavaFX & SWT 2
G Probleme beim Lösen einer Übungsaufgabe AWT, Swing, JavaFX & SWT 5
C Probleme beim 2. öffnen eines Fensters AWT, Swing, JavaFX & SWT 5
A Probleme beim Ausdrucken AWT, Swing, JavaFX & SWT 4
V Probleme beim Scrollen ein JPanels mit JScrollPane AWT, Swing, JavaFX & SWT 2
R Probleme beim Wiederherstellen eines JInternalFrames AWT, Swing, JavaFX & SWT 4
G Probleme beim Füllen einer JTable AWT, Swing, JavaFX & SWT 2
XWing Swing Image anzeigen und probleme mit klassen AWT, Swing, JavaFX & SWT 3
E repaint Probleme AWT, Swing, JavaFX & SWT 13
mananana Mögliche probleme die in einer GUI passieren Können AWT, Swing, JavaFX & SWT 6
S GridBagLayout - Probleme mit Bilderanzeige AWT, Swing, JavaFX & SWT 3
J Probleme mit idividueller Tablecell AWT, Swing, JavaFX & SWT 0
J Probleme mit InputDialog AWT, Swing, JavaFX & SWT 4
D JavaFX TextArea Probleme bei langen Zeilen AWT, Swing, JavaFX & SWT 1
G JavaFX SplitPane Anwendung - Controller Probleme AWT, Swing, JavaFX & SWT 5
K Probleme bei der Erstellung und Ausführung einer Jar Datei AWT, Swing, JavaFX & SWT 2
B Probleme Action Listener Taschenrechner AWT, Swing, JavaFX & SWT 27
pph080560 JavaFX Probleme mit FX AWT, Swing, JavaFX & SWT 3
M Probleme mit OpenJDK AWT, Swing, JavaFX & SWT 6
B Swing Probleme mit dem Layout AWT, Swing, JavaFX & SWT 1
Fiedlerdan Image-Pfad Probleme nach Export aus Eclipse AWT, Swing, JavaFX & SWT 31
H JFreeChart - DemoDataSetFactory Probleme AWT, Swing, JavaFX & SWT 1
H LayoutManager Probleme mit Positionierung/Abständen der Komponenten AWT, Swing, JavaFX & SWT 14
A Probleme mit gridheight (GridBagLayout) AWT, Swing, JavaFX & SWT 6
U Opaque Probleme AWT, Swing, JavaFX & SWT 3
S Probleme mit JComboboxen(?) AWT, Swing, JavaFX & SWT 18
S Swing Probleme mit MigLayout AWT, Swing, JavaFX & SWT 2
C Probleme mit createImage AWT, Swing, JavaFX & SWT 1
J Probleme mit contex Menu (javafx) AWT, Swing, JavaFX & SWT 1
J Probleme bei GameofLife AWT, Swing, JavaFX & SWT 24
S JavaFx - Button ActionEvent Probleme AWT, Swing, JavaFX & SWT 3
T Swing Probleme mit repaint() bzw. JScrollPane AWT, Swing, JavaFX & SWT 7
ImperatorMing JavaFX Probleme mit WindowEvent AWT, Swing, JavaFX & SWT 0
ImperatorMing JavaFX Probleme mit WindowEvent AWT, Swing, JavaFX & SWT 5
J LayoutManager GridBagLayout, probleme mit Anordnung von Objekten AWT, Swing, JavaFX & SWT 6
A Swing Probleme mit dem adden von JButtons zur JScrollPane AWT, Swing, JavaFX & SWT 2
D Swing Probleme mit dem Resizing AWT, Swing, JavaFX & SWT 7
G Probleme mit TextArea AWT, Swing, JavaFX & SWT 5
G JFrame Probleme AWT, Swing, JavaFX & SWT 2
G Cardlayout Refresh Probleme AWT, Swing, JavaFX & SWT 2
J Swing Probleme mit ListSelectionListener(), Inhalte der JList werden gelöscht? AWT, Swing, JavaFX & SWT 6
M JButton Probleme AWT, Swing, JavaFX & SWT 14
L Probleme mit Programm AWT, Swing, JavaFX & SWT 13
blazingblade komischerweise probleme mit jtextfield.gettext() AWT, Swing, JavaFX & SWT 9
Xanny 2D-Grafik Beginner! Probleme mit Swing, Gprahics class und paint AWT, Swing, JavaFX & SWT 13
Sin137 LayoutManager GridBagLayout Probleme AWT, Swing, JavaFX & SWT 6
H Netbeans Designer: Probleme mit JPanel und JFrame AWT, Swing, JavaFX & SWT 2
M Swing Probleme mit Frame.pack() AWT, Swing, JavaFX & SWT 1
M Swing JProgressbar und Outoputstream probleme AWT, Swing, JavaFX & SWT 2
S Swing Probleme mit transparenz der Hintergrundfarbe und JRadioButtons AWT, Swing, JavaFX & SWT 2
Z Probleme mit JPanel's AWT, Swing, JavaFX & SWT 6
T Probleme mit Anzeige von Elementen im JPanel AWT, Swing, JavaFX & SWT 1
Shams Probleme bei dem Hinzufügen von Komponenten zu einem JFrame AWT, Swing, JavaFX & SWT 3
A Swing Probleme mit JScrollPane AWT, Swing, JavaFX & SWT 6
M Layout-Probleme unter Swing AWT, Swing, JavaFX & SWT 5
J JavaFX JavaFX Probleme bei der Anzeige von Text AWT, Swing, JavaFX & SWT 18
A Probleme mit TilledBorder("***") AWT, Swing, JavaFX & SWT 4
F Bildschirmschoner Probleme mit Preview AWT, Swing, JavaFX & SWT 8
X Panel Probleme (Tetris) AWT, Swing, JavaFX & SWT 8
N JTable probleme AWT, Swing, JavaFX & SWT 5
B Probleme bei ImageIO.read (?!) AWT, Swing, JavaFX & SWT 9
P JFrame Location-/Size-Probleme AWT, Swing, JavaFX & SWT 5

Ähnliche Java Themen

Neue Themen


Oben