Access grailsApplication or Service in groovy class

grails, groovy, service

Solution

Dependency injection does not work for groovy classes under `src/groovy`. You can get the access to `grailsApplication` using `ApplicationHolder` like this:

import org.codehaus.groovy.grails.commons.ApplicationHolder

def grailsApplication = ApplicationHolder.application

You can access all services like this:

def allServicesArtefacts = grailsApplication.services

Problem

I am trying to access `grailsApplication` in groovy class under `src/groovy` but I get a null pointer exception. I also tried to inject a service into the same class and same result. How can I access `grailsApplication` or a service from groovy class? (I am using Grails 1.3.7)

Original source