Версия Grails: 3.1.2Можно ли вызвать службу grails в конструкторе объекта домена?
У меня есть служба управления версиями (VersionService), которую я бы хотел вызвать, когда создаю новый экземпляр объекта домена (VersionedDomainClass). Я хотел бы VersionedDomainClass обрабатывать вызов службы, но когда я пытаюсь сделать это:
class VersionedDomainClass {
transient def versionService
short businessVersion
VersionedDomainClass() {
this.businessVersion = versionService.getNextVersion(this.class)
}
}
конструктор вызывается при запуске, в какой момент versionService еще нулевой, так что я получаю NPE:
Caused by: java.lang.NullPointerException: Cannot invoke method getNextVersion() on null object
Мне не нужен какой-либо VersionedDomainClass, созданный при запуске; похоже, что Spring пытается создать собственный isntance класса домена, возможно? есть ли способ предотвратить Spring от этого, пока не будут созданы Сервисные бобы?
Это лото! Благодарю. –