Using JBoss Envers (4.2.0 FINAL) annotation but failed when try to audit @Enumerated property

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

    public enum StatusEnum {
        ACTIVE, INACTIVE, DELETED
    }
}

And also in entityManager setting the "hibernate.hbm2ddl.auto" is "update" When the application startup exceptions below showed:

Caused by: java.lang.ClassCastException: org.hibernate.mapping.SimpleValue$ParameterTypeImpl cannot be cast to java.lang.String at org.hibernate.envers.configuration.metadata.BasicMetadataGenerator.addBasic(BasicMetadataGenerator.java:70) at org.hibernate.envers.configuration.metadata.AuditMetadataGenerator.addValueInFirstPass(AuditMetadataGenerator.java:176) at org.hibernate.envers.configuration.metadata.AuditMetadataGenerator.addValue(AuditMetadataGenerator.java:242) at org.hibernate.envers.configuration.metadata.AuditMetadataGenerator.addProperties(AuditMetadataGenerator.java:258) at org.hibernate.envers.configuration.metadata.AuditMetadataGenerator.generateFirstPass(AuditMetadataGenerator.java:494)

...

有帮助吗?

解决方案

Check your pom file, make sure that hibernate-entitymanager, hibernate-core, and hibernate-envers are on the same version. It is a compatibility issue.

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top