Hi,

I'm using wicket 1.3.0 SNAPSHOT, and I'm encountering intermittent errors 
in console on my pages. I can't seem to determine a reproducible test case 
for this issue, so I'm not sure how to isolate the problem any further. 
Please let me know if you have any suggestions on what to look for.

In the initial setup of my application, I'm setting
Objects.setObjectStreamFactory(new 
org.apache.wicket.util.io.WicketObjectStreamFactory());

When I hit the page I'm working on to debug some AJAX behavior on the 
page, I sometimes get a serialization error in the log. It looks like it's 
trying to serialize the Hibernate session on the page. The session is on 
the page to enable extended Hibernate sessions. I tried switching to 
JDK-based serialization (per the suggestion in the exception message), and 
got a different error; I'll post that in a separate e-mail to cut down on 
the length.

Here's the log of the error with wicket serialization:

11:23:58,209 ERROR Objects:1113 - Error serializing object class 
com.csc.aims.specchange.wicket.SpecChangePage [object=[Page class = 

com.csc.aims.specchange.wicket.SpecChangePage, id = 4, version = 0]]
org.apache.wicket.util.io.WicketSerializeableException: Error writing 
fields for com.csc.aims.specchange.wicket.SpecChangePage
NOTE: if you feel Wicket is at fault with this exception, please report to 
the mailing list. You can switch to JDK based serialization by 

calling: org.apache.wicket.util.lang.Objects.setObjectStreamFactory(new 
IObjectStreamFactory.DefaultObjectStreamFactory()) e.g. in the init 

method of your application
        at 
org.apache.wicket.util.io.WicketObjectOutputStream.writeObjectOverride(WicketObjectOutputStream.java:806)
        at 
java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:298)
        at 
org.apache.wicket.util.lang.Objects.objectToByteArray(Objects.java:1103)
        at 
org.apache.wicket.protocol.http.FilePageStore.serializePage(FilePageStore.java:741)
        at 
org.apache.wicket.protocol.http.FilePageStore.access$800(FilePageStore.java:58)
        at 
org.apache.wicket.protocol.http.FilePageStore$PageSerializingThread.run(FilePageStore.java:261)
        at java.lang.Thread.run(Thread.java:595)
Caused by: java.lang.RuntimeException: 
java.lang.reflect.InvocationTargetException
        at 
org.apache.wicket.util.io.ClassStreamHandler.invokeWriteMethod(ClassStreamHandler.java:471)
        at 
org.apache.wicket.util.io.WicketObjectOutputStream.writeObjectOverride(WicketObjectOutputStream.java:777)
        ... 6 more
Caused by: java.lang.reflect.InvocationTargetException
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:585)
        at 
org.apache.wicket.util.io.ClassStreamHandler.invokeWriteMethod(ClassStreamHandler.java:459)
        ... 7 more
Caused by: org.apache.wicket.util.io.WicketSerializeableException: Error 
writing fields for org.hibernate.impl.SessionImpl
pageState->com.csc.aims.specchange.wicket.SpecChangePageState->conversationSession
NOTE: if you feel Wicket is at fault with this exception, please report to 
the mailing list. You can switch to JDK based serialization by 

calling: org.apache.wicket.util.lang.Objects.setObjectStreamFactory(new 
IObjectStreamFactory.DefaultObjectStreamFactory()) e.g. in the init 

method of your application
        at 
org.apache.wicket.util.io.WicketObjectOutputStream.writeObjectOverride(WicketObjectOutputStream.java:806)
        at 
java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:298)
        at 
org.apache.wicket.util.io.ClassStreamHandler$ObjectFieldAndIndex.writeField(ClassStreamHandler.java:863)
        at 
org.apache.wicket.util.io.ClassStreamHandler.writeFields(ClassStreamHandler.java:388)
        at 
org.apache.wicket.util.io.WicketObjectOutputStream.writeObjectOverride(WicketObjectOutputStream.java:779)
        at 
java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:298)
        at 
org.apache.wicket.util.io.ClassStreamHandler$ObjectFieldAndIndex.writeField(ClassStreamHandler.java:863)
        at 
org.apache.wicket.util.io.ClassStreamHandler.writeFields(ClassStreamHandler.java:388)
        at 
org.apache.wicket.util.io.WicketObjectOutputStream.defaultWriteObject(WicketObjectOutputStream.java:465)
        at 
org.apache.wicket.protocol.http.FilePageStore$PageSerializer.serializePage(FilePageStore.java:870)
        at org.apache.wicket.Page.writeObject(Page.java:1293)
        ... 12 more
Caused by: java.lang.RuntimeException: 
java.lang.reflect.InvocationTargetException
        at 
org.apache.wicket.util.io.ClassStreamHandler.invokeWriteMethod(ClassStreamHandler.java:471)
        at 
org.apache.wicket.util.io.WicketObjectOutputStream.writeObjectOverride(WicketObjectOutputStream.java:777)
        ... 22 more
Caused by: java.lang.reflect.InvocationTargetException
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:585)
        at 
org.apache.wicket.util.io.ClassStreamHandler.invokeWriteMethod(ClassStreamHandler.java:459)
        ... 23 more
Caused by: org.apache.wicket.util.io.WicketSerializeableException: No 
Serializable constructor found for class 

org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer
com.csc.aims.specchange.common.Icr$$EnhancerByCGLIB$$d2406786->CGLIB$CALLBACK_0
NOTE: if you feel Wicket is at fault with this exception, please report to 
the mailing list. You can switch to JDK based serialization by 

calling: org.apache.wicket.util.lang.Objects.setObjectStreamFactory(new 
IObjectStreamFactory.DefaultObjectStreamFactory()) e.g. in the init 

method of your application
        at 
org.apache.wicket.util.io.ClassStreamHandler.<init>(ClassStreamHandler.java:256)
        at 
org.apache.wicket.util.io.ClassStreamHandler.lookup(ClassStreamHandler.java:120)
        at 
org.apache.wicket.util.io.WicketObjectOutputStream.writeObjectOverride(WicketObjectOutputStream.java:752)
        at 
java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:298)
        at 
org.apache.wicket.util.io.ClassStreamHandler$ObjectFieldAndIndex.writeField(ClassStreamHandler.java:863)
        at 
org.apache.wicket.util.io.ClassStreamHandler.writeFields(ClassStreamHandler.java:388)
        at 
org.apache.wicket.util.io.WicketObjectOutputStream.writeObjectOverride(WicketObjectOutputStream.java:779)
        at 
java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:298)
        at 
org.hibernate.engine.StatefulPersistenceContext.serialize(StatefulPersistenceContext.java:1207)
        at 
org.hibernate.impl.SessionImpl.writeObject(SessionImpl.java:1951)
        ... 28 more


Thanks, 
Russell Morrisey
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
Wicket-user mailing list
Wicket-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wicket-user

Reply via email to