私は次のような豆を持っています:
@Data
public static class ClassUnderTest {
@NotNull
private String field1;
@NotNull
@Since(2.0)
private String field2;
@NotNull
@Until(3.0)
private String field3;
}
@Since
また@Until
、特定の API バージョンについて、REST API の一部のフィールドのシリアライズ/デシリアライズを回避できるようにする Gson アノテーションです。
この API の入力ペイロードで Bean 検証を実行して、制約違反を発生させます。Gson アノテーション (グループではなく!) に基づいて、バージョンごとに同じ違反を発生させないようにしたいと考えています。
a から、違反を引き起こした(like / )ConstraintViolation<T>
を取得して、何かによって注釈が付けられているかどうかを確認する方法はありますか?Member
Method
Field
Bean Validation で検証のバージョン管理を処理する方法はありますか?
私が持っている唯一の解決策は、パス( )からそのメンバーを取得するgetPropertyPath
ようですが、それは簡単ではないようです...