corda - KryoException: Class kotlin.KotlinNullPointerException is not annotated or on the whitelist, so cannot be used in serialization -


i'm using m13 (will move m14 asap). seeing exception:

com.esotericsoftware.kryo.kryoexception: class kotlin.kotlinnullpointerexception not annotated or on whitelist, cannot used in serialization 

immediately preceeded by:

e 15:11:10 [rpc-observation-sender-0] messaging.observablecontext.sendmessage - failed send message, kicking client. message observation(id=observableid(tolong=8088750694041100169), content=[rx.notification@9edc8e12 onerror null]) 

when attempting invoke own flow client rpc.i have checkedd custom data types have @cordaserializable attribute.

i've seen answer question indicates there bug in m13 in connection rpc serialisation. explain above exception?

am stuck on this, appreciated.

full stack trace:

e 15:11:10 [rpc-observation-sender-0] messaging.observablecontext.sendmessage - failed send message, kicking client. message observation(id=observableid(tolong=8088750694041100169), content=[rx.notification@9edc8e12 onerror null])  com.esotericsoftware.kryo.kryoexception: class kotlin.kotlinnullpointerexception not annotated or on whitelist, cannot used in serialization serialization trace: throwable (rx.notification) @ net.corda.core.serialization.cordaclassresolver.checkclass(cordaclassresolver.kt:65) ~[main/:?] @ net.corda.core.serialization.cordaclassresolver.getregistration(cordaclassresolver.kt:35) ~[main/:?] @ com.esotericsoftware.kryo.kryo.getregistration(kryo.java:488) ~[kryo-4.0.0.jar:?] @ net.corda.nodeapi.rpckryo.getregistration(rpcstructures.kt:74) ~[main/:?] @ com.esotericsoftware.kryo.util.defaultclassresolver.writeclass(defaultclassresolver.java:97) ~[kryo-4.0.0.jar:?] @ com.esotericsoftware.kryo.kryo.writeclass(kryo.java:540) ~[kryo-4.0.0.jar:?] @ com.esotericsoftware.kryo.serializers.objectfield.write(objectfield.java:76) ~[kryo-4.0.0.jar:?] @ com.esotericsoftware.kryo.serializers.compatiblefieldserializer.write(compatiblefieldserializer.java:66) ~[kryo-4.0.0.jar:?] @ com.esotericsoftware.kryo.kryo.writeclassandobject(kryo.java:651) ~[kryo-4.0.0.jar:?] @ net.corda.core.serialization.kryokt.serialize(kryo.kt:169) ~[main/:?] @ net.corda.core.serialization.kryokt$serialize$1.execute(kryo.kt:151) ~[main/:?] @ net.corda.core.serialization.kryokt$serialize$1.execute(kryo.kt) ~[main/:?] @ net.corda.core.serialization.kryopoolwithcontext.run(kryo.kt:652) ~[main/:?] @ net.corda.core.serialization.kryokt.serialize(kryo.kt:151) ~[main/:?] @ net.corda.core.serialization.kryokt.serialize$default(kryo.kt:150) ~[main/:?] @ net.corda.nodeapi.rpcapi$servertoclient$observation.writetoclientmessage(rpcapi.kt:170) ~[main/:?] @ net.corda.node.services.messaging.observablecontext.sendmessage(rpcserver.kt:411) [main/:?] @ net.corda.node.services.messaging.rpcserverobservableserializer$write$observablewithsubscription$1$onnext$1.run(rpcserver.kt:446) [main/:?] @ java.util.concurrent.executors$runnableadapter.call(executors.java:511) [?:1.8.0_131] @ java.util.concurrent.futuretask.run(futuretask.java:266) [?:1.8.0_131] @ java.util.concurrent.threadpoolexecutor.runworker(threadpoolexecutor.java:1142) [?:1.8.0_131] @ java.util.concurrent.threadpoolexecutor$worker.run(threadpoolexecutor.java:617) [?:1.8.0_131] @ java.lang.thread.run(thread.java:748) [?:1.8.0_131] e 15:54:42 [thread-4 (activemq-client-global-threads)] internal.rpcclientproxyhandler.artemismessagehandler - rpc reply arrived unknown rpc id rpcrequestid(tolong=8669965257690653719), indicates internal rpc error. e 15:54:42 [thread-4 (activemq-client-global-threads)] internal.rpcclientproxyhandler.artemismessagehandler - rpc reply arrived unknown rpc id rpcrequestid(tolong=6979460553466678543), indicates internal rpc error. e 15:54:42 [thread-4 (activemq-client-global-threads)] internal.rpcclientproxyhandler.artemismessagehandler - rpc reply arrived unknown rpc id rpcrequestid(tolong=2006512959418997107), indicates internal rpc error. 

this caused kotlinnullpointerexception being thrown in flow. kotlinnullpointerexception not on rpc client serialisation whitelist, error thrown, rather root cause.

we're investigating why kotlinnullpointerexception on rpc client whitelist, not on node whitelist: https://github.com/corda/corda/issues/1268.


Comments

Popular posts from this blog

PHP and MySQL WP -

android - InAppBilling registering BroadcastReceiver in AndroidManifest -

go - golang pprof for c library code -