1

Grailsで使用する場合、CommandObjectsまたはDomainClass継承されたプロパティの制約を制限するにはどうすればよいですか?

null 以外のプロパティを持つ親クラスがあるとしますpayload

abstract class TextContentCommand extends ContentCommand {

    String payload

    static constraints = {            
        payload nullable: false
    }

サブクラスでは、プロパティをより厳密にし、最大長を設定したいと思います:

class FacebookTextContentCommand extends TextContentCommand {

    public static final int LENGTH_MAX = 4

    static constraints = {
        importFrom TextContentCommand
        payload maxSize: LENGTH_MAX
    }
}

この方法は機能せず、より長い文字列が提供されると検証に合格します。Grails に関する私の知識は非常に表面的なものです。継承されたプロパティを制限するにはどうすればよいですか?

4

1 に答える 1

0

定数LENGTH_MAXが問題の原因でした。値を直接指定すると、検証が再び機能します。

class FacebookTextContentCommand extends TextContentCommand {

    static constraints = {
        importFrom TextContentCommand
        payload maxSize: 4
    }
}
于 2016-10-02T10:24:46.417 に答える