How to access grailsApplication.config from groovy class?

I am using Grails 1.2.1. How to access my grailsApplication.config variable? I have this class ...

public class Utility { def grailsApplication ... public static boolean isAuthorizedHost(String hostIpAddr) { // Simple validation if (hostIpAddr == null || hostIpAddr.length() == 0) return false; // def allowedDomains = grailsApplication.config.proxy.allowedDomains 

but I get this compilation error ...

  [groovyc] /Users/davea/Documents/workspace-sts-2.6.0.SR1/socialmediaproxy/src/groovy/com/nna/tool/proxy/Utility/Utility.groovy: 26: Apparent variable 'grailsApplication' was found in a static scope but doesn't refer to a local variable, static field or class. Possible causes: [groovyc] You attempted to reference a variable in the binding or an instance variable from a static context. [groovyc] You misspelled a classname or statically imported field. Please check the spelling. [groovyc] You attempted to use a method 'grailsApplication' but left out brackets in a place not allowed by the grammar. [groovyc] @ line 26, column 24. [groovyc] def allowedDomains = grailsApplication.config.proxy.allowedDomains 

Thanks for any advice, - Dave

+4
source share
2 answers

Automatic injection of an instance of grailsApplication is only available in the Spring-based beans (Grails artifacts and beans declared in resource.groovy).

To read configuration values ​​from other classes, you can use this method:

 def config = org.codehaus.groovy.grails.commons.ConfigurationHolder.config def allowedDomains = config.proxy.allowedDomains 
+14
source
 import grails.util.Holders def grailsApplication = Holders.grailsApplication 

Another answer is depreciating. (Answer checked on Grails 2.5.0)

+4
source

Source: https://habr.com/ru/post/1344932/


All Articles