grails 2.1.1命令对象服务注入自定义验证器

时间:2012-11-05 21:05:10

标签: grails customvalidator command-objects

Grails 2.1.1

我似乎无法获得一个命令对象注入服务,以便我可以使用自定义验证器。我尝试了几件事,包括 Grails command object data binding和 关于自定义验证器的2.1.1文档提出了什么,我只是想不出这个...

相关守则:

class RegistrationCommand {

    String username

    def registrationService
    static constraints = {

        username validator: { val, obj ->
            obj.registrationService.isUsernameUnique(val) }
    }
}

class RegistrationService {

    def isUsernameUnique(username){
        def user = new User(username:username)
        user.validate()
        if(user.errors.hasFieldErrors("username")){
            return false
        }else{
            return true
        }
    }

1 个答案:

答案 0 :(得分:2)

已解决..问题是由插件引起的。 我正在使用插件进行客户端jquery验证(jquery-validation-ui-1.4.2)。插件的控制器创建的命令对象没有注入服务。报告了该问题https://github.com/limcheekin/jquery-validation-ui/issues/17。该修复工作确实有效,但还没有向上游推进。