gpt4 book ai didi

java - 获取 java.io.InvalidClassException : local class incompatible: even with serialVersionUID

转载 作者:行者123 更新时间:2023-11-30 10:23:13 25 4
gpt4 key购买 nike

开发人员在实现 Serializable 接口(interface)的类中声明了这一点。

XmlAccessorType(XmlAccessType.FIELD)
@XmlType(namespace = "http://employer.webservicedto.dto.com", name = employerRequestDTO")
public class EmployerRequestDTO implements Serializable{

private static final long serialVersionUID = -3956940714175091216L;
// all private instance variables with getters & setters

}

堆栈跟踪显示 -

decodeRequestData - Exception in decodeReqData() : java.io.InvalidClassException: EmployerRequestDTO; local class incompatible: stream classdesc serialVersionUID = -3551130751187195282, local class serialVersionUID = -3956940714175091216

/**
* This method de-serializes user's request-data to return respective DTOs
*/
public static Object decodeRequestData(String requestData, String userType){
Object userRequestDTO = null;
try{
byte[] b = Base64.decode(requestData);
ByteArrayInputStream bi = new ByteArrayInputStream(b);
ObjectInputStream si = new ObjectInputStream(bi);

最佳答案

看起来该类已序列化,serialVersionUID 值设置为 -3551130751187195282 然后该类在源代码中更新并设置了 serialVersionUID-3956940714175091216。所以现在类的源与序列化的版本不兼容。您可以尝试将 serialVersionUID 设置回 -3551130751187195282 - 但我会小心处理。尝试找出更改此值的原因 - 可能是类源中的其他更改导致无法与以前的序列化版本一起使用。

关于java - 获取 java.io.InvalidClassException : local class incompatible: even with serialVersionUID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47181431/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com