0

@Roleと呼ばれるカスタム検証アノテーションがあり、私はUserを検証するカスタムバリデーターを持っています。Hibernate Validator set

javax.validation.UnexpectedTypeException: HV000030: No validator could be found for constraint 'cz.studenthub.validators.annotations.Role' validating type 'java.util.Set<cz.studenthub.core.User>' 

にせずにコレクションを検証する方法があります:私はこの

public class Project { 
    // Validates 
    @Role 
    private User creator; 

    // Throws error 
    @Role 
    private Set<User> users; 
} 

のように、このセットにすべての要素を検証するためにSet<User>にこのバリデータを使用する場合の問題は、これが悲しげに、このエラーがスローされますSet<User>の新しいバリデータを作成しますか?

注:私は、そのインスタンスが完全に有効にする必要はありませんので、Userため@Validを使用したくない、それだけで1つの条件が私のRoleValidatorによって検証することを満たしている必要があります。

答えて

1

可能であれば、Hibernate Validator 6.0.0.Beta2を使用することをお勧めします。

あなたは、単に行うことができるように、我々は今、コンテナ要素の制約のためのサポートを持っている:それはすでにかなり安定ですので

public class Project { 
    // Validates 
    @Role 
    private User creator; 

    private Set<@Role User> users; 
} 

は、私たちは週に候補リリース1を計画しています。

+0

ありがとうございます。私はDropwizardスタックを使用していますので、ベータ版へのアップデートはできませんが、近い将来可能であることを知っていれば十分です。 – TheSprtCZ

関連する問題