Objekt Serializierung - Probleme mit Event handlern



  • Hallo alle zusammen, ich stelle gerade meine bakkleratsarbeit fertig und habe ein problem mit der objekt serialisierung.

    Generell ist es so das ich mir nicht zuviel zeit in die serialisierung investieren wollte und dementsprechend eine simple java-objekt-serialisierung mit dem interface serialize erstellt habe

    ich habe hier zwei klassen
    FuzzyVariables und FuzzyRuleBlocks
    beise implementieren serializable

    zusaetzlich habe ich 2 selbstgeschriebene komponenten die diese klassen nutzen
    das sind FuzzyRuleBlockComponent und FuzzyVariableComponent.
    Beide leiten sich von der abstrakten klasse FuzzyComponent ab die JLabel extended und java.io.Serializable implementiert

    Nun zum problem:
    Ich serializiere objekte aller klassen und wenn ich sie auslese funktioniert das auch blendend und ohne probleme.
    Die beiden komponenten haben je ein popup das bei rechtsclick aktiviert wird,und auch dieses popup wird erneut erstellt, nur die event handler andscheinend nicht. Die anwendung reagiert nicht mehr auf die events die erzeugt werden. es scheint als wuerden die event handler nicht serializiert. aber ich bekomme auch keinen fehler beim serializieren? .. hat irgendwer einen vorschlag wie ich das simpel loesen kann?

    danke

    gomberl



  • Hi

    Ich vermute mal Du hast Deinen componenten EventListener zu geordnet. Du weisst schon das der Listener als selbständiges Object erstellt wird, das Du auch serialisieren und wieder deserialisieren musst.



  • Schon klar, ich habe anonyme inner classes die ich dafuer nutze.
    Das heisst die sollten serializable implementieren, dann sollte die reflection das selber machen.
    aber ich habe es schon probiert. es scheint nicht zu functionieren

    na ich schaus mir noch mal an



  • Übrigens, ein Beispiel gibts hier: http://forum.javacore.de/viewtopic.php?p=3195#3195



  • danke habs schon
    andscheinend war es doch der event handler - na jetzt funktionierts auf jeden fall

    ich hab die anonymen klassen durch benannte innere klassen ersetzt die serializable implementieren

    danke

    gomberl


Anmelden zum Antworten