-
Bug
-
Resolution: Fixed
-
P2
-
1.4.0
-
beta
-
generic, sparc
-
generic, solaris_2.6
-
Verified
The fix for BugID 4362381 introduced a new, non-public, inner class to
CardLayout.java: Card. Although CardLayout is Serializable, Card was not
declared Serializable. The prevents client code from Serializing CardLayout.
You can easily reproduce this bug using the existing regression test
test/java/awt/CONFORMANCE.
/net/jano/export/disk03/awt/dpm/merlin/test/java/awt/CONFORMANCE -> /usr/local/java/jdk1.4/solsparc/bin/java AWTConformanceTest
java.io.NotSerializableException: java.awt.CardLayout$Card
at java.io.ObjectOutputStream.outputObject(ObjectOutputStream.java:1148)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:366)
at java.io.ObjectOutputStream.outputArray(ObjectOutputStream.java:1098)
at java.io.ObjectOutputStream.checkSubstitutableSpecialClasses(ObjectOutputStream.java:456)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:361)
at java.io.ObjectOutputStream.outputClassFields(ObjectOutputStream.java:1841)
at java.io.ObjectOutputStream.defaultWriteObject(ObjectOutputStream.java:480)
at java.io.ObjectOutputStream.outputObject(ObjectOutputStream.java:1214)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:366)
at java.io.ObjectOutputStream.outputClassFields(ObjectOutputStream.java:
1841)
at java.io.ObjectOutputStream.defaultWriteObject(ObjectOutputStream.java:480)
at java.io.ObjectOutputStream.outputObject(ObjectOutputStream.java:1214)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:366)
at java.io.ObjectOutputStream.outputClassFields(ObjectOutputStream.java:1841)
at java.io.ObjectOutputStream.defaultWriteObject(ObjectOutputStream.java:480)
at java.awt.Container.writeObject(Container.java:2429)
at java.lang.reflect.Method.invoke(Native Method)
at java.io.ObjectOutputStream.invokeObjectWriter(ObjectOutputStream.java:1878)
at java.io.ObjectOutputStream.outputObject(ObjectOutputStream.java:1210)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:366)
at java.io.ObjectOutputStream.outputArray(ObjectOutputStream.java:1098)
at java.io.ObjectOutputStream.checkSubstitutableSpecialClasses(ObjectOutputStream.java:456)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:361)
at java.io.ObjectOutputStream.outputClassFields(ObjectOutputStream.java:1841)
at java.io.ObjectOutputStream.defaultWriteObject(ObjectOutputStream.java:480)
at java.awt.Container.writeObject(Container.java:2429)
at java.lang.reflect.Method.invoke(Native Method)
at java.io.ObjectOutputStream.invokeObjectWriter(ObjectOutputStream.java:1878)
at java.io.ObjectOutputStream.outputObject(ObjectOutputStream.java:1210)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:366)
at AWTConformanceTest.saveSerializedFile(AWTConformanceTest.java:431)
at AWTConformanceTest.saveSerialize(AWTConformanceTest.java:463)
at AWTConformanceTest.actionPerformed(AWTConformanceTest.java:373)
at AWTConformanceTest.actionPerformed(AWTConformanceTest.java:337)
at java.awt.MenuItem.processActionEvent(MenuItem.java:540)
at java.awt.MenuItem.processEvent(MenuItem.java:504)
at java.awt.MenuComponent.dispatchEventImpl(MenuComponent.java:276)
at java.awt.MenuComponent.dispatchEvent(MenuComponent.java:266)
at java.awt.MenuComponent.dispatchEventImpl(MenuComponent.java:278)
at java.awt.MenuComponent.dispatchEvent(MenuComponent.java:266)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:425)
at java.awt.EventDispatchThread.pumpOneEvent(EventDispatchThread.java:136)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:122)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:118)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:98)
Serialization error -- please file a bug report
CardLayout.java: Card. Although CardLayout is Serializable, Card was not
declared Serializable. The prevents client code from Serializing CardLayout.
You can easily reproduce this bug using the existing regression test
test/java/awt/CONFORMANCE.
/net/jano/export/disk03/awt/dpm/merlin/test/java/awt/CONFORMANCE -> /usr/local/java/jdk1.4/solsparc/bin/java AWTConformanceTest
java.io.NotSerializableException: java.awt.CardLayout$Card
at java.io.ObjectOutputStream.outputObject(ObjectOutputStream.java:1148)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:366)
at java.io.ObjectOutputStream.outputArray(ObjectOutputStream.java:1098)
at java.io.ObjectOutputStream.checkSubstitutableSpecialClasses(ObjectOutputStream.java:456)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:361)
at java.io.ObjectOutputStream.outputClassFields(ObjectOutputStream.java:1841)
at java.io.ObjectOutputStream.defaultWriteObject(ObjectOutputStream.java:480)
at java.io.ObjectOutputStream.outputObject(ObjectOutputStream.java:1214)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:366)
at java.io.ObjectOutputStream.outputClassFields(ObjectOutputStream.java:
1841)
at java.io.ObjectOutputStream.defaultWriteObject(ObjectOutputStream.java:480)
at java.io.ObjectOutputStream.outputObject(ObjectOutputStream.java:1214)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:366)
at java.io.ObjectOutputStream.outputClassFields(ObjectOutputStream.java:1841)
at java.io.ObjectOutputStream.defaultWriteObject(ObjectOutputStream.java:480)
at java.awt.Container.writeObject(Container.java:2429)
at java.lang.reflect.Method.invoke(Native Method)
at java.io.ObjectOutputStream.invokeObjectWriter(ObjectOutputStream.java:1878)
at java.io.ObjectOutputStream.outputObject(ObjectOutputStream.java:1210)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:366)
at java.io.ObjectOutputStream.outputArray(ObjectOutputStream.java:1098)
at java.io.ObjectOutputStream.checkSubstitutableSpecialClasses(ObjectOutputStream.java:456)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:361)
at java.io.ObjectOutputStream.outputClassFields(ObjectOutputStream.java:1841)
at java.io.ObjectOutputStream.defaultWriteObject(ObjectOutputStream.java:480)
at java.awt.Container.writeObject(Container.java:2429)
at java.lang.reflect.Method.invoke(Native Method)
at java.io.ObjectOutputStream.invokeObjectWriter(ObjectOutputStream.java:1878)
at java.io.ObjectOutputStream.outputObject(ObjectOutputStream.java:1210)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:366)
at AWTConformanceTest.saveSerializedFile(AWTConformanceTest.java:431)
at AWTConformanceTest.saveSerialize(AWTConformanceTest.java:463)
at AWTConformanceTest.actionPerformed(AWTConformanceTest.java:373)
at AWTConformanceTest.actionPerformed(AWTConformanceTest.java:337)
at java.awt.MenuItem.processActionEvent(MenuItem.java:540)
at java.awt.MenuItem.processEvent(MenuItem.java:504)
at java.awt.MenuComponent.dispatchEventImpl(MenuComponent.java:276)
at java.awt.MenuComponent.dispatchEvent(MenuComponent.java:266)
at java.awt.MenuComponent.dispatchEventImpl(MenuComponent.java:278)
at java.awt.MenuComponent.dispatchEvent(MenuComponent.java:266)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:425)
at java.awt.EventDispatchThread.pumpOneEvent(EventDispatchThread.java:136)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:122)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:118)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:98)
Serialization error -- please file a bug report
- relates to
-
JDK-4362381 Once the remove button had press, next item from the list should show.
-
- Resolved
-
-
JDK-4373250 Unapproved changes in java.awt.CardLayout (JDK-Merlin)
-
- Resolved
-