проблема с внедрением службы Grails в доменном классе - PullRequest
5 голосов
/ 14 марта 2012

Я пытаюсь внедрить 'GraauditService' в класс домена Grails 'User'.
Я использую Grails 1.3.7. Я пробовал метод прямого впрыска, как и в контроллерах.
import com.gra.audit.GraauditService

class User {
def graauditService // or even GraauditService graauditService with graauditService as transient
.......

вышеописанное не работает.graauditService всегда отображается как ноль

Я также пытался ввести через ApplicationHolder, как показано здесь

Но похоже, что ApplicationHolder устарел

Как пользоваться услугой в доменном классе?

Ответы [ 3 ]

3 голосов
/ 14 марта 2012

у меня работает следующее

class User {

    def springSecurityService
    static transients = ['springSecurityService']
}
0 голосов
/ 14 марта 2012

Для Грааля 1.3.7 решение состоит в том, чтобы ввести его через ApplicationHolder, как показано здесь Бертом Беквитом.

Приведенные выше решения могут работать для Grails 2.0, но не для 1.3.7 или более ранних.

0 голосов
/ 14 марта 2012

Попробуйте ввести его, используя временное ключевое слово:

class User {
   transient graauditService 
}
...