【问题标题】:Grails with multiple data sources and Hibernate Envers具有多个数据源和 Hibernate Envers 的 Grails
【发布时间】:2014-05-01 11:01:19
【问题描述】:

我正在运行具有多个数据源的 Grails 2.2.4 应用程序。一项要求是使用 Hibernate Envers 提供审计。我做了以下事情:

  • 域类用org.hibernate.envers.Audited注解
  • org.hibernate:hibernate-envers:3.6.10.Final 在类路径中
  • Hibernate 事件监听器定义如下。这应该适用于所有已定义的数据源。

    beans {
       auditEventListener(AuditEventListener)
       hibernateEventListeners(HibernateEventListeners) {
          listenerMap = [
            'post-insert': auditEventListener,
            'post-update': auditEventListener,
            'post-delete': auditEventListener,
            'pre-collection-update': auditEventListener,
            'pre-collection-remove': auditEventListener,
            'post-collection-recreate': auditEventListener
          ]
       }
    }
    

但是,没有审计条目被插入到修订表中。有没有人提示如何解决这个问题?这仍然是最新 Grails 版本的问题吗?我可以投入精力进行升级。注意,我只使用 Hibernate Envers。我不使用任何 Grails 插件。 nabble.com 上有一个帖子,但这不起作用。

【问题讨论】:

    标签: grails datasource hibernate-envers


    【解决方案1】:

    您可以为此使用审核日志插件。 Audit log plugin in grails

    还有。多数据源见下文click me

    或者尝试使用

    Grails Envers plugin

    【讨论】:

    • 审计日志插件“记录”到一个表中。在我的设置中,我遵循 Hibernate Envers 的方法,其中每个域对象都有自己的修订表。所以这行不通。 Grails Envers Plugin 符合我的预期,但据我了解,它仅为主数据源创建修订条目。为了使它能够解决这个限制,我不得不删除我原来的帖子中提到的 hibernateEventListeners bean。我暂时还好。
    猜你喜欢
    • 2015-09-03
    • 2015-03-20
    • 2012-10-18
    • 2021-09-09
    • 1970-01-01
    • 1970-01-01
    • 2012-10-15
    • 1970-01-01
    • 2011-09-01
    相关资源
    最近更新 更多