我有Spring4.1.2,Hibernate 4.2.18,Jboss 6应用程序。我已经配置了实体和自定义修订实体。但是Envers听众仍未注册到listenerRegistry。
我尝试调试逆源,发现源[EnversIntegrator.integrate方法]正在跳过侦听器,因为它找不到任何审计表。
我也找到了根本原因。当我深入研究时,AnnotationsMetaDataReader.getDefaultAudited方法中的代码'clazz.getAnnotation(Audited.class)'总是返回null。 我确信审计注释存在于实体类中。
这似乎很奇怪,因为它适用于另一个示例应用程序。
答案 0 :(得分:0)
这似乎是一个类加载问题。请确保所需的envers到位。
您的应用程序是否在战争中使用Jboss模块'org.hibernate'而不是hibernate jar?如果是这样,请在应用程序中配置jboss模块'org.hibernate.envers'。