|
Oi
Adriano...
Essa classe
que vc est� tentanto serializar herda de outra classe? Ou seja, ela � subclasse
de alguma outra? Porque se for, apenas implementar Serializable n�o resolver�,
vc deve implementar a interface Externalizable. Essa classe define dois m�todos:
writeExternal( ObjectOutput out ) e readExternal( ObjectInput in ). Nesses
m�todos, vc vai especificar quais atributos da classe vc vai "exportar" para as
suas inst�ncias. O m�todo writeExternal vc vai gravar o estado do objeto, bem
como os estados da sua superclasse, antes da serializa��o. No readExternal, vc
vai especificar quais campos da sua classe devem ser atualizados depois que o
seu objeto � "desserializado". Vc deve fazer isso para todas as super-classes na
sua hierarquia. Outra coisa importante � definir um construtor vazio, ou seja,
sem par�metros para todas as classes que comp�em a sua hierarquia. D� uma olhada
na p�gina:
L� vc vai
encontrar a especifica��o de como a serializa��o em Java funciona. Se vc ainda
n�o estiver conseguindo realizar a serializa��o, manda um e-mail pra mim em
privado que eu envio um c�digo exemplo que eu tenho aqui.
Rosfran Lins Borges Analista de Sistemas - NDS [EMAIL PROTECTED]F�ton�
Inform�tica e Servi�os Fone: (61) 328 5060 R.: 204
----- Original Message -----
Sent: Thursday, April 25, 2002 4:39
PM
Subject: [java-list]
java.io.Serializable.
Tenho um conjunto de classes. Em uma certa
classe, quero Serializar um atributo dessa classe.
Tive que implementar a classe
java.io.Serializable em todas as outras classes.
Mas continuou dando o seguinte erro:
Algu�m sabe por que isso est�
acontecendo?
IOException saveListPictures.
getMessage: java.awt.geom.Point2D$Float printStackTrace java.io.NotSerializableException:
java.awt.geom.Point2D$Float at
java.io.ObjectOutputStream.outputObject(ObjectOutputStream.java:1148)
at
java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:366)
at
java.io.ObjectOutputStream.outputClassFields(ObjectOutputStream.java:1827)
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:1827)
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.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:1827)
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
icc.com.graphics.vg.ICCVGPanel.saveListPictures(ICCVGPanel.java:46)
at
ACME_Prototype_One.SaveActionPerformed(ACME_Prototype_One.java:161)
at
ACME_Prototype_One.access$100(ACME_Prototype_One.java:14)
at
ACME_Prototype_One$2.actionPerformed(ACME_Prototype_One.java:62)
at
javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1450)
at
javax.swing.AbstractButton$ForwardActionEvents.actionPerformed(AbstractButton.java:1504)
at
javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:378)
at
javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:250)
at
javax.swing.AbstractButton.doClick(AbstractButton.java:279)
at
javax.swing.plaf.basic.BasicMenuItemUI$MouseInputHandler.mouseReleased(BasicMenuItemUI.java:886)
at
java.awt.Component.processMouseEvent(Component.java:3715)
at
java.awt.Component.processEvent(Component.java:3544)
at
java.awt.Container.processEvent(Container.java:1164)
at
java.awt.Component.dispatchEventImpl(Component.java:2593)
at
java.awt.Container.dispatchEventImpl(Container.java:1213)
at
java.awt.Component.dispatchEvent(Component.java:2497)
at
java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:2451)
at
java.awt.LightweightDispatcher.processMouseEvent(Container.java:2216)
at
java.awt.LightweightDispatcher.dispatchEvent(Container.java:2125)
at java.awt.Container.dispatchEventImpl(Container.java:1200)FIM IOException
saveListPictures at
java.awt.Window.dispatchEventImpl(Window.java:926)
at
java.awt.Component.dispatchEvent(Component.java:2497)
at
java.awt.EventQueue.dispatchEvent(EventQueue.java:339)
at
java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:131)
at
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:98)
at
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:85)
----------------- Adriano Sastre
Vieira Especialista em Sistemas Inatel Competence Center +55 35 3471
9335 http://www.inatel.br
|