Annotation Interface ValidEntity
@Target({METHOD,FIELD,ANNOTATION_TYPE,CONSTRUCTOR,PARAMETER})
@Retention(RUNTIME)
@Documented
@Constraint(validatedBy=org.iplass.mtp.impl.beanvalidation.ValidEntityValidator.class)
public @interface ValidEntity
Entityに定義されるvalidation定義に従った検証を行います。
propertiesを指定することにより、検証対象プロパティを指定可能です。 properties未指定の場合は、ネストされたEntity含め、すべてのプロパティの検証を行います。
例:
public class SampleBean { private User user; @ValidEntity(properties={"accountId", "rank.*", "groups.**"}) public User getUser() { return user; } public void setUser(User user) { this.user = user; } : : }
-
Nested Class Summary
-
Optional Element Summary
-
Element Details
-
message
String message- Default:
""
-
groups
Class<?>[] groups- Default:
{}
-
payload
Class<? extends jakarta.validation.Payload>[] payload- Default:
{}
-
properties
String[] properties検証対象のプロパティを指定します。
*指定は、当該のEntityのプロパティすべてをあらわします。
**指定は、当該のEntity以下、ネストされたEntityのプロパティも含むぷべてのプロパティをあらわします。例(Userエンティティが検証対象とした場合)
name
-> nameを検証対象とします
*
-> Userエンティティのすべてのプロパティを検証対象とします
rank.* -> Userエンティティのrankで指し示されるRankエンティティのすべてのプロパティを検証対象とします
groups.** -> Userエンティティのgroupsで指し示されるGroupエンティティのすべてのプロパティおよびネストされたEntity参照を検証対象とします
- Returns:
- Default:
{}
-