访问grails3 resources.groovy中的属性占位符不起作用

时间:2015-10-23 12:39:33

标签: grails

根据grails spring文档(https://grails.github.io/grails-doc/3.0.3/guide/spring.html#propertyPlaceholderConfiguration)我试图从resources.groovy文件中访问一些在外部.yml文件(fe database.user)中定义的属性。< / p>

我尝试了以下内容:

def username = "${grailsApplication.config.dataSource.username}"

在application.yml中,此属性的定义方式如下:

dataSource:
    username: ${database.username}

此配置适用于grails3中的所有内容,但resources.groovy除外。

有没有办法访问已解决的属性?或者是否有另一种在grails中定义自定义连接池的方法3我不知道?

此致

1 个答案:

答案 0 :(得分:2)

好的,我找到了解决问题的方法。

在application.yml内部,占位符$ {database.username}必须按以下方式定义:

database:
    username: ${database.username}

resources.groovy 中:

def username = "${grailsApplication.config.database.username}"

然后一切正常。

希望这有助于其他偶然发现此问题的人。