Annotation Type NotEmptyIfOtherHasValue


@Documented @Constraint(validatedBy=NotEmptyIfOtherHasValueValidator.class) @Target({TYPE,ANNOTATION_TYPE}) @Retention(RUNTIME) public @interface NotEmptyIfOtherHasValue
The annotated bean must contain at least two properties:
  • a field that has to be checked (option field)
  • a field which entry is compared against a value (option fieldCompare and valueCompare)
if the entry of fieldCompare matches valueCompare, field must not be empty (null or "").
Supported types are beans, null elements are considered valid.
Author:
Manfred Tremmel
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static @interface 
    Defines several @MustBeFilledIfOtherHasValue annotations on the same element.
  • Required Element Summary

    Required Elements
    Modifier and Type
    Required Element
    Description
    field name to check.
    field name to compare.
    value to compare with field name to compare.
  • Optional Element Summary

    Optional Elements
    Modifier and Type
    Optional Element
    Description
    Class<?>[]
    groups to use.
    localized message.
    Class<? extends jakarta.validation.Payload>[]
    payload whatever.
  • Element Details

    • field

      String field
      field name to check.
      Returns:
      field/path contains value to check
    • fieldCompare

      String fieldCompare
      field name to compare.
      Returns:
      field/path contains value to compare
    • valueCompare

      String[] valueCompare
      value to compare with field name to compare.
      Returns:
      compare value
    • message

      String message
      localized message.
      Returns:
      localized validation message
      Default:
      "{de.knightsoftnet.validators.shared.NotEmptyIfOtherHasValue.message}"
    • groups

      Class<?>[] groups
      groups to use.
      Returns:
      array of validation groups
      Default:
      {}
    • payload

      Class<? extends jakarta.validation.Payload>[] payload
      payload whatever.
      Returns:
      payload class
      Default:
      {}