hibernate / javax検証のためにクラス階層をオーバーライドすることは可能ですか?または、クラスを拡張してパラメータ検証をオーバーライドする方法はありますか?
アノテーションを使用@Valid
し、クラスでjavax検証アノテーションを設定しました。検証が削除される拡張クラスが必要です。休止状態の検証はクラス階層全体をループし、スーパークラスでも検証をチェックすることがわかりました。これは、SpringMVCでセットアップされたJsonベースのRESTAPIから使用します。
例:
public class Parent {
protected Integer numChildren;
@NotNull(message = "NumChildren has to be set.")
@Size(min 1, max 10, message = "A partent has to have at least one kid.")
public Integer getNumChildren() {
return numChildren;
}
public void setNumChildren(Integer numChilds) {
this.numChildren = numChilds;
}
}
public class Child extends Parent {
// A child doesnt have to have kids, but can, so I want to override this parameter
// and remove the validation requirement, and make it just optional.
@Override
public Integer getNumChildren() {
return super.numChildren;
}
}
よろしく、マーカス