Question

J'utilise le Grails Webflow plugin. Voici le domaine I objets je travaille avec:

class Foo implements Serializable {
    String fooProp1,
           fooProp2

    static constraints = {
        fooProp2 nullable: false
    }
}

class Bar implements Serializable {
    Foo fooObject

    static constraints = {
        fooObject nullable: false
    }
}

A un point dans le webflow, je dois vous assurer que fooObject.fooProp1 est pas nul. Dans ce cas, je veux jeter une erreur et forcer l'utilisateur à fournir avec une valeur. J'ai essayé d'utiliser validate () pour le faire (à la fois sur la barre des objets et Foo), mais depuis fooProp1 a annulable: propriété vrai, il passe la validation. Toutes les idées?

Était-ce utile?

La solution

Vous pouvez probablement le faire dans le flux Web en adaptant le code suivant:

if(fooObject.fooProp1 == null) {
    fooObject.errors.rejectValue('fooProp1', 'nullable')
}

Le second argument à cette méthode, 'nullable', peut être différent pour votre situation. Vous aurez juste besoin de le mettre au code de message (de message.properties) pour afficher le message d'erreur que vous voulez.

Jetez un oeil pour plus de moyens utilisation reject() et rejectValue().

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top