2010-12-22 17 views
12

Tüm dahili kısıtlamaların @Constraint'daki validatedBy parametresi için boş bir değere sahip olduğunu fark ettim. @Constraint(validatedBy = {})Boş onaylanmış @Constraint öğesinde

İlk olarak, neden validatedBy için boş bir değere sahip olmalarına izin verilir? Eklemenin doğrulanmasını gerektirmeyen kısıtlama kompozisyonu için boş bırakabileceğinizi düşündüm.

Ayrıca validatedBy boş rağmen hazırda Doğrulayıcı yine birbirinden yerleşik kısıtlama için validator uygulama sınıfını bulabilirsiniz unutmayın, ama benim kısıtlaması için validatedBy boş bırakırsanız, benim özel doğrulayıcı aldı geçmez. Neden?

Teşekkürler.

+0

Düşünmemin başka bir nedeni Onun API sadece tamlık için –

+1

kusurlu, bu burada cevaplandı: http://stackoverflow.com/questions/26544588/hibernate-validator-to-validate-constraints-if-constraintvalidated-by –

cevap

9

Bu yerleşik olanlar, uygulamaya özel olarak özel bir şekilde işleme tabi tutulur ve doğrulayıcıları programsal olarak yapılandırılır.

Hazırda Bekleme Aracı için ConstraintHelper.java içinde yapılır. Özel kısıtlamalarınız için aynı şeyi elde edemeyeceğinizi düşünüyorum.

+0

Teşekkürler, bu yüzden gidemem kısıtlama boşluğum için validatedBy ve Hazırlamam Validator'um özel doğrulayıcıyı almasını bekliyor mu? –

+3

Hayır, bulmak için Hazırda bekletme ek açıklamada özel doğrulayıcı belirtmeniz gerekir. – Guillaume

İlgili konular