2012-06-26 126 views
1

我完全新的格里芬,并有简单的问题,我惊讶,我无法找到答案...如何访问配置在格里芬

如何访问我的每个环境设置我Config.groovy定义的服务。

environments { 
    development { 
     awserver.url = "http://localhost:8080/app" 
    } 

    production { 
     awserver.url = "xxx" 
    } 
}  

我试过注射griffonApplication(与Grails的比喻),并使用griffonApplication.config,但似乎没有被工作

回答

1

环境的设置是在应用程序的配置自动合并。 服务(任何其他GriffonArtifact)有GriffonApplication属性,其名称为“应用程序”,所以下面应该工作

class SampleService { 
    def serviceMethod() { 
     URL url = app.config.awserver.url.toURL() 
     // do something with url 
    } 
} 
+0

有没有访问任何其他方式配置的一种方式,像ConfigurationHolder.config在Grails的? –

+0

是的,只需使用griffon.util.ApplicationHolder抓住应用程序实例即可。 Griffon没有为配置对象公开额外的持有者(就像Grails一样),所有的访问都是通过应用程序实例进行的。 – aalmiray

+0

太棒了,谢谢你的手 –