Я хочу сделать небольшую пользовательскую проверку с помощью JSR-303 javax.validation
.
У меня есть поле. И если в это поле введено определенное значение, я хочу потребовать, чтобы несколько других полей не были null
.
Я пытаюсь понять это. Не уверен, что бы я назвал это, чтобы помочь найти объяснение.
Любая помощь будет оценена по достоинству. Я новичок в этом.
В настоящий момент я думаю о пользовательских ограничениях. Но я не уверен, как проверить значение зависимого поля из аннотации. В принципе, я не уверен, как получить доступ к объекту панели из аннотации.
public class StatusValidator implements ConstraintValidator<NotNull, String> {
@Override
public void initialize(NotNull constraintAnnotation) {}
@Override
public boolean isValid(String value, ConstraintValidatorContext context) {
if ("Canceled".equals(panel.status.getValue())) {
if (value != null) {
return true;
}
} else {
return false;
}
}
}
Это panel.status.getValue();
дает мне проблемы.. не уверен, как это сделать.