我想用Dropwizard实现@Auditable。哪一个将创建* _audit表,并将详细信息与Revinfo表一起存储?
我正在将Dropwizard与Liquibase一起使用。
我在实体上添加了@Auditable
@Entity
@Table(name = "user_plan")
@Audited
public class UserPlan extends IdentityEntity
Run Code Online (Sandbox Code Playgroud)
并尝试更新抛出错误的表
! java.lang.AbstractMethodError: org.hibernate.envers.internal.synchronization.AuditProcessManager$2.doAfterTransactionCompletion(ZLorg/hibernate/engine/spi/SharedSessionContractImplementor;)V
! at org.hibernate.engine.spi.ActionQueue$AfterTransactionCompletionProcessQueue.afterTransactionCompletion(ActionQueue.java:975)
! at org.hibernate.engine.spi.ActionQueue.afterTransactionCompletion(ActionQueue.java:509)
! at org.hibernate.internal.SessionImpl.afterTransactionCompletion(SessionImpl.java:2472)
! at org.hibernate.engine.jdbc.internal.JdbcCoordinatorImpl.afterTransactionCompletion(JdbcCoordinatorImpl.java:479)
! at org.hibernate.resource.transaction.backend.jdbc.internal.JdbcResourceLocalTransactionCoordinatorImpl.afterCompletionCallback(JdbcResourceLocalTransactionCoordinatorImpl.java:176)
! at org.hibernate.resource.transaction.backend.jdbc.internal.JdbcResourceLocalTransactionCoordinatorImpl.access$200(JdbcResourceLocalTransactionCoordinatorImpl.java:38)
! at org.hibernate.resource.transaction.backend.jdbc.internal.JdbcResourceLocalTransactionCoordinatorImpl$TransactionDriverControlImpl.rollback(JdbcResourceLocalTransactionCoordinatorImpl.java:252)
! at org.hibernate.engine.transaction.internal.TransactionImpl.rollback(TransactionImpl.java:100)
! at io.dropwizard.hibernate.UnitOfWorkAspect.rollbackTransaction(UnitOfWorkAspect.java:144)
! at io.dropwizard.hibernate.UnitOfWorkAspect.onError(UnitOfWorkAspect.java:106)
! at io.dropwizard.hibernate.UnitOfWorkApplicationListener$UnitOfWorkEventListener.onEvent(UnitOfWorkApplicationListener.java:85)
! at org.glassfish.jersey.server.internal.monitoring.CompositeRequestEventListener.onEvent(CompositeRequestEventListener.java:71)
! at org.glassfish.jersey.server.internal.process.RequestProcessingContext.triggerEvent(RequestProcessingContext.java:226)
! at org.glassfish.jersey.server.ServerRuntime$Responder.process(ServerRuntime.java:472)
! at org.glassfish.jersey.server.ServerRuntime$2.run(ServerRuntime.java:334)
! at org.glassfish.jersey.internal.Errors$1.call(Errors.java:271)
! at org.glassfish.jersey.internal.Errors$1.call(Errors.java:267)
! at org.glassfish.jersey.internal.Errors.process(Errors.java:315)
! at org.glassfish.jersey.internal.Errors.process(Errors.java:297)
! at org.glassfish.jersey.internal.Errors.process(Errors.java:267)
! at …Run Code Online (Sandbox Code Playgroud) 我有一张名为 Parent 的父表。用作其他 3 个表 child1,child2,child3 的外键的父表的 id
我想删除该表并再次创建父表。我不想丢失子表中的数据。