objectへの参照を持つFoo
object への参照を保持するオブジェクトがあり、 が有効であるためには、 への有効な非 null 参照が必要です。Bar
Baz
Foo
Bar
Baz
問題は、有効で null 以外が有効である必要Bar
がないBaz
ことです。そのため、単純に検証をそこに入れることはできませんFoo
。
これは、私が話しているクラス構造の単純な疑似バージョンです。
class Foo {
// Bar needs to have a valid Baz. Something like this would be ideal:
// @HasAValidBaz(message="Baz is required")
Bar bar;
}
class Bar {
// Baz can be null and Bar will still be valid
// But if there _is_ a Baz, it needs to be valid
Baz baz;
}
class Baz {
@NotBlank(message="My String is required")
String myString;
}
クラスレベルのカスタム検証アノテーションを使用してこれを実行できることはわかっていますが、問題は、これらのエラー オブジェクトと対応するメッセージがフィールド インスタンスではなくクラス インスタンスに適用されることです。正しいフォーム フィールド。
これを行う良い方法はありますか、またはコントローラーでこの検証を実装することに固執していますか?