我升级了一个grails项目1.3.9 - > 2.2现在我得到一个关于回调到具有大写首字母的外部服务的约束的错误。我删除了这个属性的约束要求,但想找到一种方法来保持约束功能,但我需要一个带大写字母的属性。我不控制发送大写参数的外部API。
回调闭包如下所示:
class CallbackCommand{
String token
String ID
static constraints = {
token nullable: false
//ID nullable: false
}
}
我评论了ID约束,因为大写的第一个字母失败了。 如何强制执行此约束,但保持参数命名与外部API一致?
答案 0 :(得分:1)
为ID
属性定义自定义验证器,如下所示:
@grails.validation.Validateable
CallbackCommand{
String token
String ID
static constraints = {
token nullable: false
ID(validator:{val,obj->
return(obj.ID != null)
})
}
}