【发布时间】:2013-05-28 15:14:15
【问题描述】:
我想在我的应用程序中将 hibernate 3 更新到 4 和 spring 3 到 3.1 和 spring security 3 到 3.1,但是当我这样做时,具有使用数据库中以前版本生成的权限的用户不可用并且异常
java.io.InvalidClassException GrantedAuthorityImpl local class incompatible
当应用程序想要从数据库中获取用户权限时发生。这是实体用户的配置:
@ElementCollection(targetClass = GrantedAuthority.class, fetch=FetchType.EAGER)
@CollectionTable(name = "user_authorities", schema = "mydb", joinColumns = @javax.persistence.JoinColumn(name = "user_id"))
private Collection<GrantedAuthority> authorities;
【问题讨论】:
-
当我将 spring security 从 3.1 降级到 3 时一切正常,你知道解决这个问题的方法吗?
-
不,没有多个 Spring Security 版本,我不会尝试破解一些类加载问题。
标签: spring hibernate spring-security