繁体   English   中英

Java - Google App Engine - 当我更改存储在会话范围中的类时,InvalidClassException

[英]Java - Google App Engine - InvalidClassException when I change a class that was stored in session scope

我更新了我的User类,现在每当有人在其会话范围中存储旧版本的User类访问我的网站时,我都会收到InvalidClassException

javax.servlet.ServletException: java.lang.RuntimeException: 
java.io.InvalidClassException: User; local class incompatible: 
stream classdesc serialVersionUID = 4949038118012519093, 
local class serialVersionUID = -971500502189813151

如何阻止这些用户发生此错误? 每次我想要更新存储在会话范围内的类时,我可能会使每个人的会话无效,但是有更好的方法,以便我的用户不必再次登录吗?

你可以加

private final long serialVersionUID=4949038118012519093;

你的班级定义。 新类应该具有相同的可序列化字段,当然顺序相同。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM