2017-08-11 6 views
1

Supplier_Registrationと呼ばれる1つのテーブルに対してサーバー側の検証用にHibernate Validator APIを使用しています。対応するJavaクラスは次のとおりです。そのメンバの1つはAddressという別のクラスです。 Addressにはどのようなアノテーションを使用する必要がありますので、Addressクラスのメンバーも検証されますか?事前に感謝します。Hibernate Validatorを使用している間に別のクラス内のクラスの注釈

public class Registration implements Serializable { 
    private static final long serialVersionUID = 3380401999460628270L; 
    private static final String EMAIL_PATTERN = 
      "^[_A-Za-z0-9-\\+]+(\\.[_A-Za-z0-9-]+)*@" 
      + "[A-Za-z0-9-]+(\\.[A-Za-z0-9]+)*(\\.[A-Za-z]{2,})$"; 

    @NotNull(message="{legalName_notnull}") 
    @Size(min=1, max=255, message="{legalName_not_to_exceed}") 

    private String legalName; 

    @NotNull(message="{adminFirstName_notnull}") 
    @Size(min=1, max=40, message="{adminFirstName_not_to_exceed}") 
    private String adminFirstName; 


    @NotNull(message="{adminLastName_notnull}") 
    @Size(min=1, max=40, message="{adminLastName_not_to_exceed}") 
    private String adminLastName; 

    @NotNull(message="{adminEmail_notnull}") 
    @Size(min=1, max=255, message="{adminEmail_not_to_exceed}") 
    @Pattern(regexp=EMAIL_PATTERN, message="{adminEmail_not_valid}") 
    private String adminEmail; 

    @NotNull(message="{reEnterEmail_notnull}") 
    @Size(min=1, max=255, message="{reEnterEmail_not_to_exceed}") 
    @Pattern(regexp=EMAIL_PATTERN, message="{reEnterEmail_not_valid}") 

    private String reEnterEmail; 

    @NotNull(message="{phoneCountryNumber_notnull}") 
    @Size(min=1, max=5, message="{phoneCountryNumber_not_to_exceed}") 
    private String phoneCountryNbr; 

    @NotNull(message="{phoneNumber_notnull}") 
    @Size(min=1, max=18, message="{phoneNumber_not_to_exceed}") 
    private String phoneNumber; 

    @NotNull(message="{dunsNumber_notnull}") 
    @Size(min=1, max=9, message="{dunsNumber_not_to_exceed}") 
    private String dunsNumber; 

    private Address address; 

答えて

0

実行するこの種類の検証は、カスケード検証と呼ばれます。 addressを検証するには、addressプロパティで@Valid注釈を使用する必要があります。さらに、addressが必須の場合(つまり、そのフィールドをヌルにすることができない場合)、@NotNullも使用できます。 - Object graphs

public class Registration implements Serializable { 
    // all other properties ... 

    @Valid // this one is requred if you want address constraints to be validated 
    @NotNull // this one is optional - use it in case if address is a mandatory field 
    private Address address; 
} 

あなたがここにドキュメントで見つけることができるカスケード接続の検証に関するすべての情報:だから、このようなものを持っています

関連する問題