首页 > 解决方案 > 注册实现实例化或定义空构造函数的自定义序列化程序 - Wildfly 上的 Redis 缓存

问题描述

我在 Wildfly 服务器上运行 res 客户端(Redisson)并使用了一些缓存键。我越来越低于异常。相同的代码适用于 SpringBoot 和独立的 Java 程序。但在 Wildfly 上失败了。任何帮助/建议表示赞赏。

引起:java.io.IOException:java.io.IOException::无法实例化'com.xxxx.columnInfo.StandardColumnInfo'。注册实现实例化或定义空构造函数的自定义序列化程序。在 deployment.pc.ear//org.nustaq.serialization.FSTObjectInput.readObject(FSTObjectInput.java:247) 在 deployment.pc.ear//org.redisson.codec.FstCodec$1.decode(FstCodec.java:250) 在deployment.pc.ear//org.redisson.client.handler.CommandDecoder.decode(CommandDecoder.java:375) 在deployment.pc.ear//org.redisson.client.handler.CommandDecoder.decodeList(CommandDecoder.java:419 ) 在 deployment.pc.ear//org.redisson.client.handler.CommandDecoder.decode(CommandDecoder.java:384) 在 deployment.pc.ear//org.redisson.client.handler.CommandDecoder.decodeList(CommandDecoder.java :419) 在 deployment.pc.ear//org.redisson.client.handler.CommandDecoder。

标签: rediswildflyredisson

解决方案


我建议您使用 MarshallingCodec,因为 FSTCodec 存在稳定性问题。甚至 Redisson 也将 Marshalling Codec 作为其默认编解码器。最好的部分是它可以序列化几乎所有的对象。


推荐阅读