Skip to content

深对象序列化时,对象类型存错了 #2

Description

@xiafish201

public class FcProcess implements java.io.Serializable {

private static final long serialVersionUID = 3630124344252204424L;
// Fields
private String id = null;
private FcActivity start = null;
private FcActivityInst startActivityInst;
private Map<String, FcActivity> activitys = new HashMap<String, FcActivity>();
private Map<String, FcTransition> transtions = new HashMap<String, FcTransition>();

//setget方法省略。。。。。
}

public class FcActivity implements java.io.Serializable {

private static final long serialVersionUID = -9007766803863740129L;
private FcProcess process;
private String actId;// 唯一
private String preActId
private String actType;
private String className;
private String refProcId;
private Map<String, FcTransition> afterLine = new LinkedHashMap<String, FcTransition>();
private Map<FcTransitionKey, FcTransition> tranByKey = new LinkedHashMap<FcTransitionKey, FcTransition>();

//setget方法省略。。。。。
}

public class FcTransition implements java.io.Serializable {

private static final long serialVersionUID = -4999580208748055052L;
private String id;// 唯一
private boolean defaultFlag = false;
private FcTransitionKey key = new FcTransitionKey();
    private String conditionFlag = "all";
private List<FcTransitionCondition> conditionList = new ArrayList<FcTransitionCondition>();// 指该Transition中的条件的集合

//setget方法省略。。。。。
}

在序列化这个对象时,递归到FcTransition这里的conditionList时,会将它的对象类型存成7(MAP_HASH = 7;)然后在翻序列化时就会报错了,Object com.jd.dd.glowworm.deserializer.multi.ListDeserializer.getActualTypeObjectWhileInterface(PBDeserializer deserializer)里面的throw new PBException("不支持这种List类型!");

这个是对对象层次或者类型有限制么?

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions