首页 > 解决方案 > 如何追踪 Akka 序列化失败的根本原因?

问题描述

从 Akka 获取序列化错误,如下所示,您如何围绕 Akka 消息的有问题的不可序列化成员/字段?该异常确实命名了无法序列化的成员值(如下com.our.member.object),但该对象本身包含许多嵌套成员,并且错误消息似乎对无法序列化的有问题的嵌套对象几乎没有提供任何线索:

2018-05-24T06:30:51.897Z 错误 VCA-akka.actor.default-dispatcher-4 akka.remote.EndpointWriter - 无法使用序列化程序 [class akka.remote.serialization] 序列化远程消息 [class akka.actor.ActorSelectionMessage] .MessageContainerSerializer]。瞬态关联错误(关联仍然有效)akka.remote.MessageSerializer$SerializationException:无法使用序列化程序 [class akka.remote.serialization.MessageContainerSerializer] 序列化远程消息 [class akka.actor.ActorSelectionMessage]。在 akka.remote.MessageSerializer$.serialize(MessageSerializer.scala:62) 在 akka.remote.EndpointWriter.$anonfun$serializeMessage$1(Endpoint.scala:895) 在 scala.util.DynamicVariable.withValue(DynamicVariable.scala:58)在 akka.remote.EndpointWriter.serializeMessage(Endpoint.scala:895) 在 akka.remote.EndpointWriter.writeSend(Endpoint.scala:

标签: akka

解决方案


我今天收到了这个错误,这个错误的原因是忘记在消息类中添加“implements Serializable”。错误消息和堆栈跟踪对于帮助我实现这一点绝对没有用。


推荐阅读