Hi,

I get a strange StackOverflowError with Fast2WicketSerializer

Env : Wicket version 9.0.0.M2 and previous with Fast2WicketSerializer
quickstart : https://issues.apache.org/jira/browse/WICKET-6679


When Session.get() is called in a non serialized object
and session.getMetaData(MetaDataKey) is in a serialized object
there is a StackOverflowError

Will produce a StackOverflowError
@Override
protected void onInitialize() {
    super.onInitialize();

    Session session = Session.get();

    add(new AjaxLink<Void>("link") {

        @Override
        public void onClick(AjaxRequestTarget target) {
            
            Boolean showgrid = session.getMetaData(KeyGrid);

            // ....
        }
    });
}
    
Will not produce StackOverflowError
@Override
protected void onInitialize() {
    super.onInitialize();

    add(new AjaxLink<Void>("link") {

        @Override
        public void onClick(AjaxRequestTarget target) {
            
            Boolean showgrid = Session.get().getMetaData(KeyGrid);

            // ....
        }
    });
}

    
Exception in thread "Wicket-AsyncPageStore-PageSavingThread" 
java.lang.StackOverflowError
        at 
org.nustaq.serialization.FSTObjectOutput.writeObjectCompatibleRecursive(FSTObjectOutput.java:568)
        at 
org.nustaq.serialization.FSTObjectOutput.writeObjectCompatible(FSTObjectOutput.java:554)
        at 
org.nustaq.serialization.FSTObjectOutput.writeObjectWithContext(FSTObjectOutput.java:450)
        at 
org.nustaq.serialization.FSTObjectOutput.writeObjectWithContext(FSTObjectOutput.java:369)
        at 
org.nustaq.serialization.FSTObjectOutput.writeObjectFields(FSTObjectOutput.java:664)
        at 
org.nustaq.serialization.FSTObjectOutput.defaultWriteObject(FSTObjectOutput.java:546)
        at 
org.nustaq.serialization.FSTObjectOutput.writeObjectWithContext(FSTObjectOutput.java:458)
        at 
org.nustaq.serialization.FSTObjectOutput.writeObjectWithContext(FSTObjectOutput.java:369)
        at 
org.nustaq.serialization.FSTObjectOutput.writeObjectFields(FSTObjectOutput.java:664)
        at 
org.nustaq.serialization.FSTObjectOutput.defaultWriteObject(FSTObjectOutput.java:546)
        at 
org.nustaq.serialization.FSTObjectOutput.writeObjectWithContext(FSTObjectOutput.java:458)
        at 
org.nustaq.serialization.FSTObjectOutput.writeObjectWithContext(FSTObjectOutput.java:369)
        at 
org.nustaq.serialization.FSTObjectOutput.writeObjectFields(FSTObjectOutput.java:664)
        at 
org.nustaq.serialization.FSTObjectOutput.defaultWriteObject(FSTObjectOutput.java:546)
        at 
org.nustaq.serialization.FSTObjectOutput.writeObjectWithContext(FSTObjectOutput.java:458)
        at 
org.nustaq.serialization.FSTObjectOutput.writeObjectInternal(FSTObjectOutput.java:327)
        at 
org.nustaq.serialization.serializers.FSTArrayListSerializer.writeObject(FSTArrayListSerializer.java:49)
        at 
org.nustaq.serialization.FSTObjectOutput.writeObjectWithContext(FSTObjectOutput.java:476)
        at 
org.nustaq.serialization.FSTObjectOutput.writeObjectWithContext(FSTObjectOutput.java:369)
        at 
org.nustaq.serialization.FSTObjectOutput.writeObjectFields(FSTObjectOutput.java:664)
        at 
org.nustaq.serialization.FSTObjectOutput.defaultWriteObject(FSTObjectOutput.java:546)
        at 
org.nustaq.serialization.FSTObjectOutput.writeObjectWithContext(FSTObjectOutput.java:458)
        at 
org.nustaq.serialization.FSTObjectOutput.writeObjectInternal(FSTObjectOutput.java:327)
        at 
org.nustaq.serialization.FSTObjectOutput.writeObject(FSTObjectOutput.java:294)
        at 
org.nustaq.serialization.FSTObjectOutput.writeObject(FSTObjectOutput.java:204)
        at 
org.wicketstuff.pageserializer.fast2.Fast2WicketSerializer.serialize(Fast2WicketSerializer.java:77)
        at 
org.apache.wicket.pageStore.InSessionPageStore$SessionData.writeObject(InSessionPageStore.java:317)
        


Do I miss something with the MetaData ?

François




---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org

Reply via email to