グレイル 2.1.1
カスタムバリデーターを使用できるように、コマンドオブジェクトをサービスに挿入できないようです。Grailsコマンドオブジェクトのデータバインディングや、カスタムバリデーターの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
}
}