JMS序列化异常php

JMS序列化异常php,php,serialization,jmsserializerbundle,Php,Serialization,Jmsserializerbundle,我有以下课程 /** * @Discriminator(field = "type", map = { * "b":"B", "c":"C", * }) */ abstract class A {} class B extends A { ... } class C extends A { /** * @var A * @Serializer\Type("A") */ $a } 现在,当我序列化类C的对象时

我有以下课程

/**
 * @Discriminator(field = "type", map = {
 *      "b":"B",
        "c":"C",
 * })
 */
abstract class A {}

class B extends A { ... }
class C extends A {
     /**
     * @var A
     * @Serializer\Type("A")
     */
      $a
}
现在,当我序列化类
C
的对象时:

找不到基类“A”的鉴别器字段名“type” 输入数据

知道我做错了什么吗?我正在使用JMS序列化程序

编辑


当我尝试反序列化序列化对象时,出现此异常。

抽象类无法初始化,因此无法反序列化。 如果您需要类A,您应该将其更改为普通类,而不是抽象类

一年前我遇到过类似的问题,这是我的解决方案: