前提
Java SE 11、Spring Bootを使用して実装しています。
多数のカスタムクラスは、1つのインターフェイスを実装しています。あるメソッドの入力値は、多数のカスタムクラスの中のどれかのオブジェクトです。この入力値に対してBean Validationで入力チェックをします。
実現したいこと
Bean Validationにインターフェイスではなく、インターフェイスの実装クラスを指定させたいです。
発生している問題
インターフェイス型のオブジェクトに対してFactoryパターンを使用してどのクラスなのか特定し、Class<?>型で取得するところまでは実装できました。この結果をBean Validationに設定する方法がわかりません。
該当のソースコード
java
1// InterfaceObject→実装されるインターフェイス 2// validObject→入力値 3// インターフェイス型をConstraintViolationに設定させたくない。 4ValidatorFactory factory = Validation.buildDefaultValidatorFactory(); 5Validator validator = factory.getValidator(); 6// 何らかの方法でClass<?>からConstraintViolationに設定可能な結果を取得したい。 7Set<ConstraintViolation<InterfaceObject>> constraintViolations = validator.validate(validObject);
回答1件
あなたの回答
tips
プレビュー