我有串的ID在一個bean的名單,我喜歡來驗證字符串ID的「業績表」:JSR303驗證:在運行時傳入對象/上下文信息?
@MyIdListValidator
private List<String> idsFromHtmlForm; //These need to be validate against an ID list from DB
所以我要somewho所有有效的值注入「參考目錄」在rumtime檢查。 (這些引用ID在運行時從數據庫讀取/生成)。這是一個web應用程序(Struts),我真的好奇爲什麼這似乎是不可能的,但是這是一個在萬維網應用程序中普遍使用的用例。你如何解決這個問題?
是否有某種方式要麼注入任意信息(上下文對象)到
validator.validate(form);
方法?
,並有一個簡單的方法來獲得訪問整個(!!)對象這種方法被驗證:
的ConstraintValidator<Date,String>,
注public boolean isValid(String value, ConstraintValidatorContext constraintValidatorContext)
:我的問題是沒有關係的類級驗證,但如果有一個技巧可以訪問整個對象(屬性屬性),那麼屬性級驗證不僅僅是一個propety本身的價值。 (如果我可以訪問整個實例/類進行驗證,我可以將數據設置爲輔助屬性,但其混亂,但將是一個解決方案)。
非常感謝