SNAPSHOT_SERIALIZATION_ERROR 重复 属性 JaVers

SNAPSHOT_SERIALIZATION_ERROR Duplicated property JaVers

当我创建一个对象时,它正确地提交了它,但是,当我编辑它时,我得到以下异常:

12:32:20.244 [http-nio-8082-exec-9] 错误 o.a.c.c.C.[.[.[.[dispatcherServlet] - Servlet.service() for servlet [dispatcherServlet]在路径 [] 的上下文中抛出异常 [请求处理失败;嵌套异常是 JaversException SNAPSHOT_SERIALIZATION_ERROR:序列化 'com.tesicnor.tcheck.equipment.data.model.Equipment/92849' 的快照时出错,重复 属性 'Field ValueType:String equipmentStatus, declared in Detectable'] 具有根本原因 org.javers.common.exception.JaversException:SNAPSHOT_SERIALIZATION_ERROR:序列化 'com.tesicnor.tcheck.equipment.data.model.Equipment/92849' 的快照时出错,重复 属性 'Field ValueType:String equipmentStatus, declared in Detectable'

我的实体 Equipment 包含一个 equipmentStatus,这个实体从另一个名为 Detectable 的实体扩展而来,它也包含一个 equipmentStatus 字段。但是,还有更多领域会发生同样的情况。知道如何解决这个错误吗?

当您将两个同名字段合并为一个字段时 class - 您是在自找麻烦。这是反模式。 Javers 将对象快照序列化为一个 Map:propertyName -> propertyValue。显然,如果您有重复的字段,则无法正确序列化快照。尝试删除重复的字段。