Grails Version: 3.1.2Kann ich einen Grails-Service in einem Domänenobjektkonstruktor aufrufen?
Ich habe einen Versionsdienst (VersionService), den ich aufrufen möchte, wenn ich eine neue Instanz eines Domänenobjekts (VersionedomainClass) erstellen. Ich würde die VersionedDomainClass gerne behandeln den Kundendienst anrufen, aber wenn ich versuche, dies zu tun:
class VersionedDomainClass {
transient def versionService
short businessVersion
VersionedDomainClass() {
this.businessVersion = versionService.getNextVersion(this.class)
}
}
der Konstruktor wird während des Startvorgangs aufgerufen, an welchem Punkt versionService noch null ist, damit ich eine NPE erhalten:
Caused by: java.lang.NullPointerException: Cannot invoke method getNextVersion() on null object
Ich brauche keine VersionedomainClass beim Start instanziiert; sieht es so aus, als ob Spring versucht, eine eigene Domain zu erstellen? Gibt es eine Möglichkeit, dies zu verhindern, bis die Service-Beans erstellt wurden?
Das ist ein Bingo! Vielen Dank. –