1
我有這樣一個bean:Bean驗證
@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
是GSON批註允許避免序列化/在我的REST API反序列化的某些領域,某些API版本。
我對此API的輸入有效負載執行bean驗證以引發約束違規。 我希望能夠根據Gson註釋(而不是組!)提出每個版本的相同違規行爲。
有沒有一種方法,從ConstraintViolation<T>
,得到Member
(如Method
/Field
),它產生的衝突,讓我檢查,如果它是由什麼註釋?
有沒有辦法通過Bean驗證來處理驗證版本化?
我唯一的解決辦法似乎來檢索路徑(getPropertyPath
)該成員,但似乎並不容易做到......