在 grails 3 中注入数据源会忽略 application.groovy 中设置的其他属性

Injecting datasource in grails 3 ignores additional properties set in application.groovy

我正在使用 grails 3.3.9,我在 application.groovy 中有一个数据源定义为:

    username = ...
    password = ...
    ...
    properties {
      ...
      maxActive=16 
      testOnBorrow=true
      testWhileIdle=true
      ...
   }

我想在服务中注入数据源,所以我通过定义来注入它:

class MyService {
   def dataSource
  
    def myMethod() {
       def sql = new Sql(dataSource)
    ...
    }
}

问题是 application.groovy 中设置的属性被忽略并使用默认值:即 maxActive=10、testOnBorrow=false、testWhileIdle=false。

我想知道如何注入数据源并保留 application.groovy 中定义的属性...

稍后编辑

看起来这个问题的原因实际上是 grails hibernate-filter-plugin。没有它,数据源看起来不错。

需要查看完整的数据源。往上看可能有问题。此外,如果您在 yaml 中定义数据源,它将覆盖您的 application.groovy 属性(我相信)