Debug support for Serialization
jjarkko May 23, 2006 8:46 AMHello,
I'm not sure if this is the right forum for the problem but for some parts is sure is. I'm looking for a way to debug this weird serialization error i'm having (Running JBoss 4.0.4 GA). I've no idea who is working with offending class org.jaxen.VariableContext or why it's included anyhow.. What're the tools or options to start tracking problem like this? Is there a way to show the instance object tree from which the class is referenced.. Maybe turn up some logging or?
Caused by: java.lang.NoClassDefFoundError: org/jaxen/VariableContext
javax.ejb.EJBException: Could not passivate; failed to save state at org.jboss.ejb3.cache.simple.StatefulSessionFilePersistenceManager.passivateSession(StatefulSessionFilePersistenceManager.java:363) at org.jboss.ejb3.cache.simple.SimpleStatefulCache.passivate(SimpleStatefulCache.java:194) at org.jboss.ejb3.cache.simple.SimpleStatefulCache$SessionTimeoutTask.run(SimpleStatefulCache.java:129) Caused by: java.io.IOException at org.jboss.serial.persister.RegularObjectPersister.writeSlotWithMethod(RegularObjectPersister.java:129) at org.jboss.serial.persister.RegularObjectPersister.defaultWrite(RegularObjectPersister.java:86) at org.jboss.serial.persister.RegularObjectPersister.writeData(RegularObjectPersister.java:62) at org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.describeObject(ObjectDescriptorFactory.java:275) at org.jboss.serial.objectmetamodel.DataContainer$DataContainerDirectOutput.writeObject(DataContainer.java:202) at org.jboss.serial.persister.RegularObjectPersister.writeSlotWithFields(RegularObjectPersister.java:182) at org.jboss.serial.persister.RegularObjectPersister.defaultWrite(RegularObjectPersister.java:90) at org.jboss.serial.persister.RegularObjectPersister.writeData(RegularObjectPersister.java:62) at org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.describeObject(ObjectDescriptorFactory.java:275) at org.jboss.serial.objectmetamodel.DataContainer$DataContainerDirectOutput.writeObject(DataContainer.java:202) at org.jboss.serial.persister.RegularObjectPersister.writeSlotWithFields(RegularObjectPersister.java:182) at org.jboss.serial.persister.RegularObjectPersister.defaultWrite(RegularObjectPersister.java:90) at org.jboss.serial.persister.RegularObjectPersister.writeData(RegularObjectPersister.java:62) at org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.describeObject(ObjectDescriptorFactory.java:275) at org.jboss.serial.objectmetamodel.DataContainer$DataContainerDirectOutput.writeObject(DataContainer.java:202) at org.jboss.serial.persister.ArrayPersister.saveObjectArray(ArrayPersister.java:110) at org.jboss.serial.persister.ArrayPersister.writeData(ArrayPersister.java:101) at org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.describeObject(ObjectDescriptorFactory.java:275) at org.jboss.serial.objectmetamodel.DataContainer$DataContainerDirectOutput.writeObject(DataContainer.java:202) at org.jboss.serial.io.JBossObjectOutputStream.writeObjectOverride(JBossObjectOutputStream.java:181) at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:287) at org.jboss.serial.io.MarshalledObject.<init>(MarshalledObject.java:51) at org.jboss.ejb3.stateful.StatefulBeanContext.writeExternal(StatefulBeanContext.java:401) at org.jboss.serial.persister.ExternalizePersister.writeData(ExternalizePersister.java:58) at org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.describeObject(ObjectDescriptorFactory.java:275) at org.jboss.serial.objectmetamodel.DataContainer$DataContainerDirectOutput.writeObject(DataContainer.java:202) at org.jboss.serial.io.JBossObjectOutputStream.writeObjectOverride(JBossObjectOutputStream.java:181) at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:287) at org.jboss.ejb3.cache.simple.StatefulSessionFilePersistenceManager.passivateSession(StatefulSessionFilePersistenceManager.java:347) ... 2 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.jboss.serial.persister.RegularObjectPersister.writeSlotWithMethod(RegularObjectPersister.java:120) ... 30 more Caused by: java.io.IOException at org.jboss.serial.persister.RegularObjectPersister.writeSlotWithMethod(RegularObjectPersister.java:129) at org.jboss.serial.persister.RegularObjectPersister.defaultWrite(RegularObjectPersister.java:86) at org.jboss.serial.persister.RegularObjectPersister.writeData(RegularObjectPersister.java:62) at org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.describeObject(ObjectDescriptorFactory.java:275) at org.jboss.serial.objectmetamodel.DataContainer$DataContainerDirectOutput.writeObject(DataContainer.java:202) at org.jboss.serial.persister.RegularObjectPersister.writeSlotWithFields(RegularObjectPersister.java:182) at org.jboss.serial.persister.RegularObjectPersister.defaultWrite(RegularObjectPersister.java:90) at org.jboss.serial.persister.RegularObjectPersister.writeData(RegularObjectPersister.java:62) at org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.describeObject(ObjectDescriptorFactory.java:275) at org.jboss.serial.objectmetamodel.DataContainer$DataContainerDirectOutput.writeObject(DataContainer.java:202) at org.jboss.serial.persister.RegularObjectPersister.writeSlotWithFields(RegularObjectPersister.java:182) at org.jboss.serial.persister.RegularObjectPersister.defaultWrite(RegularObjectPersister.java:90) at org.jboss.serial.persister.RegularObjectPersister.writeData(RegularObjectPersister.java:62) at org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.describeObject(ObjectDescriptorFactory.java:275) at org.jboss.serial.objectmetamodel.DataContainer$DataContainerDirectOutput.writeObject(DataContainer.java:202) at org.jboss.serial.persister.RegularObjectPersister.writeSlotWithFields(RegularObjectPersister.java:182) at org.jboss.serial.persister.RegularObjectPersister.defaultWrite(RegularObjectPersister.java:90) at org.jboss.serial.persister.RegularObjectPersister.writeData(RegularObjectPersister.java:62) at org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.describeObject(ObjectDescriptorFactory.java:275) at org.jboss.serial.objectmetamodel.DataContainer$DataContainerDirectOutput.writeObject(DataContainer.java:202) at org.jboss.serial.persister.RegularObjectPersister.writeSlotWithFields(RegularObjectPersister.java:182) at org.jboss.serial.persister.RegularObjectPersister.defaultWrite(RegularObjectPersister.java:90) at org.jboss.serial.persister.RegularObjectPersister.writeData(RegularObjectPersister.java:62) at org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.describeObject(ObjectDescriptorFactory.java:275) at org.jboss.serial.objectmetamodel.DataContainer$DataContainerDirectOutput.writeObject(DataContainer.java:202) at org.jboss.serial.persister.ArrayPersister.saveObjectArray(ArrayPersister.java:110) at org.jboss.serial.persister.ArrayPersister.writeData(ArrayPersister.java:101) at org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.describeObject(ObjectDescriptorFactory.java:275) at org.jboss.serial.objectmetamodel.DataContainer$DataContainerDirectOutput.writeObject(DataContainer.java:202) at org.jboss.serial.persister.RegularObjectPersister.writeSlotWithFields(RegularObjectPersister.java:182) at org.jboss.serial.persister.RegularObjectPersister.defaultWrite(RegularObjectPersister.java:90) at org.jboss.serial.persister.RegularObjectPersister.writeData(RegularObjectPersister.java:62) at org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.describeObject(ObjectDescriptorFactory.java:275) at org.jboss.serial.objectmetamodel.DataContainer$DataContainerDirectOutput.writeObject(DataContainer.java:202) at org.jboss.serial.persister.RegularObjectPersister.writeSlotWithFields(RegularObjectPersister.java:182) at org.jboss.serial.persister.RegularObjectPersister.defaultWrite(RegularObjectPersister.java:90) at org.jboss.serial.persister.RegularObjectPersister.writeData(RegularObjectPersister.java:62) at org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.describeObject(ObjectDescriptorFactory.java:275) at org.jboss.serial.objectmetamodel.DataContainer$DataContainerDirectOutput.writeObject(DataContainer.java:202) at org.jboss.serial.persister.RegularObjectPersister.writeSlotWithFields(RegularObjectPersister.java:182) at org.jboss.serial.persister.RegularObjectPersister.defaultWrite(RegularObjectPersister.java:90) at org.jboss.serial.persister.RegularObjectPersister.writeData(RegularObjectPersister.java:62) at org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.describeObject(ObjectDescriptorFactory.java:275) at org.jboss.serial.objectmetamodel.DataContainer$DataContainerDirectOutput.writeObject(DataContainer.java:202) at org.jboss.serial.persister.RegularObjectPersister.writeSlotWithFields(RegularObjectPersister.java:182) at org.jboss.serial.persister.RegularObjectPersister.defaultWrite(RegularObjectPersister.java:90) at org.jboss.serial.persister.RegularObjectPersister.writeData(RegularObjectPersister.java:62) at org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.describeObject(ObjectDescriptorFactory.java:275) at org.jboss.serial.objectmetamodel.DataContainer$DataContainerDirectOutput.writeObject(DataContainer.java:202) at org.jboss.serial.persister.RegularObjectPersister.writeSlotWithFields(RegularObjectPersister.java:182) at org.jboss.serial.persister.RegularObjectPersister.defaultWrite(RegularObjectPersister.java:90) at org.jboss.serial.persister.RegularObjectPersister.writeData(RegularObjectPersister.java:62) at org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.describeObject(ObjectDescriptorFactory.java:275) at org.jboss.serial.objectmetamodel.DataContainer$DataContainerDirectOutput.writeObject(DataContainer.java:202) at org.jboss.serial.persister.RegularObjectPersister.writeSlotWithFields(RegularObjectPersister.java:182) at org.jboss.serial.persister.RegularObjectPersister.defaultWrite(RegularObjectPersister.java:90) at org.jboss.serial.persister.RegularObjectPersister.writeData(RegularObjectPersister.java:62) at org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.describeObject(ObjectDescriptorFactory.java:275) at org.jboss.serial.objectmetamodel.DataContainer$DataContainerDirectOutput.writeObject(DataContainer.java:202) at org.jboss.serial.persister.RegularObjectPersister.writeSlotWithFields(RegularObjectPersister.java:182) at org.jboss.serial.persister.RegularObjectPersister.defaultWrite(RegularObjectPersister.java:90) at org.jboss.serial.persister.RegularObjectPersister.writeData(RegularObjectPersister.java:62) at org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.describeObject(ObjectDescriptorFactory.java:275) at org.jboss.serial.objectmetamodel.DataContainer$DataContainerDirectOutput.writeObject(DataContainer.java:202) at org.jboss.serial.persister.RegularObjectPersister.writeSlotWithFields(RegularObjectPersister.java:182) at org.jboss.serial.persister.RegularObjectPersister.defaultWrite(RegularObjectPersister.java:90) at org.jboss.serial.persister.RegularObjectPersister.writeData(RegularObjectPersister.java:62) at org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.describeObject(ObjectDescriptorFactory.java:275) at org.jboss.serial.objectmetamodel.DataContainer$DataContainerDirectOutput.writeObject(DataContainer.java:202) at org.jboss.serial.persister.ObjectOutputStreamProxy.writeObjectOverride(ObjectOutputStreamProxy.java:60) at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:287) at java.util.HashMap.writeObject(HashMap.java:985) ... 35 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.jboss.serial.persister.RegularObjectPersister.writeSlotWithMethod(RegularObjectPersister.java:120) ... 106 more Caused by: java.io.IOException at org.jboss.serial.persister.RegularObjectPersister.writeSlotWithMethod(RegularObjectPersister.java:129) at org.jboss.serial.persister.RegularObjectPersister.defaultWrite(RegularObjectPersister.java:86) at org.jboss.serial.persister.RegularObjectPersister.writeData(RegularObjectPersister.java:62) at org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.describeObject(ObjectDescriptorFactory.java:275) at org.jboss.serial.objectmetamodel.DataContainer$DataContainerDirectOutput.writeObject(DataContainer.java:202) at org.jboss.serial.persister.RegularObjectPersister.writeSlotWithFields(RegularObjectPersister.java:182) at org.jboss.serial.persister.RegularObjectPersister.defaultWrite(RegularObjectPersister.java:90) at org.jboss.serial.persister.RegularObjectPersister.writeData(RegularObjectPersister.java:62) at org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.describeObject(ObjectDescriptorFactory.java:275) at org.jboss.serial.objectmetamodel.DataContainer$DataContainerDirectOutput.writeObject(DataContainer.java:202) at org.jboss.serial.persister.RegularObjectPersister.writeSlotWithFields(RegularObjectPersister.java:182) at org.jboss.serial.persister.RegularObjectPersister.defaultWrite(RegularObjectPersister.java:90) at org.jboss.serial.persister.RegularObjectPersister.writeData(RegularObjectPersister.java:62) at org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.describeObject(ObjectDescriptorFactory.java:275) at org.jboss.serial.objectmetamodel.DataContainer$DataContainerDirectOutput.writeObject(DataContainer.java:202) at org.jboss.serial.persister.ObjectOutputStreamProxy.writeObjectOverride(ObjectOutputStreamProxy.java:60) at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:287) at EDU.oswego.cs.dl.util.concurrent.CopyOnWriteArrayList.writeObject(CopyOnWriteArrayList.java:772) ... 111 more Caused by: java.lang.reflect.InvocationTargetException at sun.reflect.GeneratedMethodAccessor922.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.jboss.serial.persister.RegularObjectPersister.writeSlotWithMethod(RegularObjectPersister.java:120) ... 128 more Caused by: java.lang.NoClassDefFoundError: org/jaxen/VariableContext at java.lang.Class.getDeclaredMethods0(Native Method) at java.lang.Class.privateGetDeclaredMethods(Class.java:2365) at java.lang.Class.getDeclaredMethod(Class.java:1907) at org.jboss.serial.classmetamodel.ClassMetaData.lookupMethodOnHierarchy(ClassMetaData.java:101) at org.jboss.serial.classmetamodel.ClassMetaData.lookupInternalMethods(ClassMetaData.java:417) at org.jboss.serial.classmetamodel.ClassMetaData.<init>(ClassMetaData.java:121) at org.jboss.serial.classmetamodel.ClassMetamodelFactory.getClassMetaData(ClassMetamodelFactory.java:335) at org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.describeObject(ObjectDescriptorFactory.java:167) at org.jboss.serial.objectmetamodel.DataContainer$DataContainerDirectOutput.writeObject(DataContainer.java:202) at org.jboss.serial.persister.ArrayPersister.saveObjectArray(ArrayPersister.java:110) at org.jboss.serial.persister.ArrayPersister.writeData(ArrayPersister.java:101) at org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.describeObject(ObjectDescriptorFactory.java:275) at org.jboss.serial.objectmetamodel.DataContainer$DataContainerDirectOutput.writeObject(DataContainer.java:202) at org.jboss.serial.persister.RegularObjectPersister.writeSlotWithFields(RegularObjectPersister.java:182) at org.jboss.serial.persister.ObjectOutputStreamProxy.writeFields(ObjectOutputStreamProxy.java:79) at org.jboss.serial.persister.ObjectOutputStreamProxy.defaultWriteObject(ObjectOutputStreamProxy.java:68) at java.util.Vector.writeObject(Vector.java:1018) ... 132 more