Hibernate envers枚举审计异常

时间:2013-07-10 07:37:51

标签: hibernate hibernate-envers

使用JBoss Envers(4.2.0 FINAL)注释但在尝试审核@Enumerated属性时失败

@Entity
@Audited
public class TestEntity extends AbstractEntity {
    @Column(name="status")
    @Enumerated(EnumType.STRING)
    private StatusEnum status;

    public enum StatusEnum {
        ACTIVE, INACTIVE, DELETED
    }
}

而且在entityManager设置中,“hibernate.hbm2ddl.auto”是“更新” 当下面的应用程序启动异常显示:

  

引起:java.lang.ClassCastException:   org.hibernate.mapping.SimpleValue $ ParameterTypeImpl无法强制转换为   java.lang.String at   org.hibernate.envers.configuration.metadata.BasicMetadataGenerator.addBasic(BasicMetadataGenerator.java:70)   在   org.hibernate.envers.configuration.metadata.AuditMetadataGenerator.addValueInFirstPass(AuditMetadataGenerator.java:176)   在   org.hibernate.envers.configuration.metadata.AuditMetadataGenerator.addValue(AuditMetadataGenerator.java:242)   在   org.hibernate.envers.configuration.metadata.AuditMetadataGenerator.addProperties(AuditMetadataGenerator.java:258)   在   org.hibernate.envers.configuration.metadata.AuditMetadataGenerator.generateFirstPass(AuditMetadataGenerator.java:494)

     

...

1 个答案:

答案 0 :(得分:2)

检查你的pom文件,确保hibernate-entitymanager,hibernate-core和hibernate-envers在同一个版本上。这是一个兼容性问题。