Как использовать пользовательский конвертер Spring с сервисом Grails

#grails #spring-4

#grails #spring-4

Вопрос:

У меня есть пользовательский конвертер Spring типа GenericConverter. Я пытаюсь подключить его к такой службе…

 resources.groovy
domainConverter(DomainConverter){bean -> bean.scope = 'prototype'; bean.autowire = "byName"}
  

 class DomainService {
    def domainConverter
    DomainCommand convertDomain(Domain bd){
       bd as DomainCommand
    }

    Domain convertCommand(DomainCommand bc){
        bc as Domain
    }
}
  

Однако, похоже, это не удается…

Невозможно преобразовать объект ‘Domain (…)’ с классом ‘Domain’ в класс ‘DomainCommand’

Может кто-нибудь помочь с тем, чего мне не хватает?

Ответ №1:

 domainConverter(DomainConverter){bean -> bean.scope = 'prototype'; bean.autowire = "byName"}
domainConverterService(ConversionServiceFactoryBean){
  converters = ref("domainConverter")
}
  

В обслуживании…

 def domainConverterService
def newCommand = domainConverterService.convert(domain, domain.class)