Grails插件如何修改应用程序的默认映射/约束配置?

时间:2014-05-01 23:26:12

标签: grails plugins groovy grails-plugin grails-config

我正在创建一个Grails插件,它将修改以下配置属性的值:

grails.gorm.default.constraints

问题是,当我的插件描述符开始运行时(doWithSpring),如果使用该插件的Grails应用程序具有默认约束属性的现有值,那么它就已经被执行了。

我希望我的插件在Grails开始执行之前修改默认约束的值,以便我也可以包含我添加的约束。默认约束闭包似乎被执行在Grails app启动期间多次。

我尝试过几种方法:

  • 使用此帖子谈到的平台核心插件:How to configure a grails plugin from another grails plugin
    • 问题类似:Grails应用程序的默认约束块在插件的doWithConfig开始运行之前至少执行一次。
  • (Hackish)修改Grails应用程序,在其“locations”中包含一个FooConfig.groovy,该文件存在于插件的grails-app / conf / dir中,因此可以在类路径中访问(见下文)。
    • 问题:Hackish,仍在努力,但可能是我唯一的选择。

grails.config.locations = ["classpath:FooConfig.class"] // Yes, *.class

0 个答案:

没有答案