Las nuevas instancias omitirán la administración de dependencias de Spring; necesita obtener el bean singleton configurado desde el contexto de la aplicación. Use este lugar:
def service = ApplicationHolder.application.getMainContext().getBean("${property}Service")
Eso supone que la 'propiedad' es el nombre del bean parcial para un servicio, es decir, para FooBarService, la propiedad tendría que ser 'parametro'. Si se trata de 'parametro', puede utilizar GrailsNameUtils.getPropertyName() para solucionarlo: clases de dominio
import grails.util.GrailsNameUtils
String beanName = GrailsNameUtils.getPropertyName(property) + 'Service'
def service = ApplicationHolder.application.getMainContext().getBean(beanName)
Sí, funciona. Probé el método getBean, pero estaba pasando 'FooBar' :) – rukoche
Lo anterior no funcionaba para mí hasta que reemplacé '.getMainContext' con' .getMainContext(). ' – sebnukem
Gracias, lo arreglé después de ver que su la edición se rechazó incorrectamente –