
kryo - issue #97
com.esotericsoftware.kryo.KryoException: Unable to find class: sun.reflect.GeneratedMethodAccessor
What steps will reproduce the problem? 1.I serialize my Object(MyComplexObject) for 25 times into 25 files(the same object) in a for statement,1 second sleep per circle; 2.When I deserialize the Object from the 25 files,the problem occured; 3.No problem before first 11,problem begine from the 12th and after 12; 4.Something difference between the first 11 files and the 12th file;
What version of the Kryo are you using? 2.20
Please provide any additional information below. ******deserialize********* com.esotericsoftware.kryo.KryoException: Unable to find class: sun.reflect.GeneratedMethodAccessor5 Serialization trace: delegate (sun.reflect.DelegatingMethodAccessorImpl) methodAccessor (java.lang.reflect.Method) method (com.espertech.esper.event.bean.ReflectionPropMethodGetter) propertyGetterCache (com.espertech.esper.event.bean.BeanEventType) eventType (com.espertech.esper.event.bean.BeanEventBean) second (com.espertech.esper.collection.Pair) at com.esotericsoftware.kryo.util.DefaultClassResolver.readName(DefaultClassResolver.java:132) at com.esotericsoftware.kryo.util.DefaultClassResolver.readClass(DefaultClassResolver.java:109) at com.esotericsoftware.kryo.Kryo.readClass(Kryo.java:613) at com.esotericsoftware.kryo.serializers.FieldSerializer$ObjectField.read(FieldSerializer.java:599) at com.esotericsoftware.kryo.serializers.FieldSerializer.read(FieldSerializer.java:221) at com.esotericsoftware.kryo.Kryo.readObject(Kryo.java:651) at com.esotericsoftware.kryo.serializers.FieldSerializer$ObjectField.read(FieldSerializer.java:605) at com.esotericsoftware.kryo.serializers.FieldSerializer.read(FieldSerializer.java:221) at com.esotericsoftware.kryo.Kryo.readObjectOrNull(Kryo.java:702) at com.esotericsoftware.kryo.serializers.FieldSerializer$ObjectField.read(FieldSerializer.java:611) at com.esotericsoftware.kryo.serializers.FieldSerializer.read(FieldSerializer.java:221) at com.esotericsoftware.kryo.Kryo.readClassAndObject(Kryo.java:732) at com.esotericsoftware.kryo.serializers.MapSerializer.read(MapSerializer.java:134) at com.esotericsoftware.kryo.serializers.MapSerializer.read(MapSerializer.java:17) at com.esotericsoftware.kryo.Kryo.readObject(Kryo.java:651) at com.esotericsoftware.kryo.serializers.FieldSerializer$ObjectField.read(FieldSerializer.java:605) at com.esotericsoftware.kryo.serializers.FieldSerializer.read(FieldSerializer.java:221) at com.esotericsoftware.kryo.Kryo.readObject(Kryo.java:651) at com.esotericsoftware.kryo.serializers.FieldSerializer$ObjectField.read(FieldSerializer.java:605) at com.esotericsoftware.kryo.serializers.FieldSerializer.read(FieldSerializer.java:221) at com.esotericsoftware.kryo.Kryo.readObject(Kryo.java:651) at com.esotericsoftware.kryo.serializers.FieldSerializer$ObjectField.read(FieldSerializer.java:605) at com.esotericsoftware.kryo.serializers.FieldSerializer.read(FieldSerializer.java:221) at com.esotericsoftware.kryo.Kryo.readClassAndObject(Kryo.java:732) at com.espertech.esper.util.SerializerUtil.deserialize(SerializerUtil.java:124) at com.espertech.esper.util.SerializerUtil.doserialize(SerializerUtil.java:162) at com.espertech.esper.collection.TimeWindow.add(TimeWindow.java:199) at com.espertech.esper.view.window.TimeWindowView.update(TimeWindowView.java:136) at com.espertech.esper.view.ZeroDepthStream.insert(ZeroDepthStream.java:58) at com.espertech.esper.view.stream.StreamFactorySvcImpl$2.matchFound(StreamFactorySvcImpl.java:181) at com.espertech.esper.core.service.EPRuntimeImpl.processStatementFilterSingle(EPRuntimeImpl.java:1258) at com.espertech.esper.core.service.EPRuntimeImpl.processMatches(EPRuntimeImpl.java:1019) at com.espertech.esper.core.service.EPRuntimeImpl.processWrappedEvent(EPRuntimeImpl.java:505) at com.espertech.esper.core.service.EPRuntimeImpl.processEvent(EPRuntimeImpl.java:481) at com.espertech.esper.core.service.EPRuntimeImpl.sendEvent(EPRuntimeImpl.java:240) at com.espertech.esper.example.terminal.jse.simulate.TerminalEventProcessingAgent.sendEvent(TerminalEventProcessingAgent.java:165) at com.espertech.esper.example.terminal.jse.simulate.TerminalEventSimulator.sendEvents(TerminalEventSimulator.java:49) at com.espertech.esper.example.terminal.jse.simulate.TerminalEventSimulator.main(TerminalEventSimulator.java:64) Caused by: java.lang.ClassNotFoundException: sun.reflect.GeneratedMethodAccessor5 at java.net.URLClassLoader$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Unknown Source) at com.esotericsoftware.kryo.util.DefaultClassResolver.readName(DefaultClassResolver.java:130) ... 37 more
Comment #1
Posted on Nov 29, 2012 by Grumpy CamelIt seems you serialized an instance of sun.reflect.GeneratedMethodAccessor5. This is likley not what you wanted. Turn on debug and watch the log during serialization to see what object lead you to serialize GeneratedMethodAccessor5.
Comment #2
Posted on Dec 4, 2012 by Grumpy Camel(No comment was entered for this change.)
Status: Invalid
Labels:
Type-Defect
Priority-Medium