У меня есть вопрос о проверке креста на основе JSR. У меня есть служба, основанная на отдыхе, для получения и публикации. Так что у меня есть что-то вродеJSR cross filed validation
@GET
ItemOfferId getItem(String)
другого является то, что
@Post
boolean setItem(ItemOfferId)
В классе ItemOfferId у меня есть аннотацию уровня класса называется @validoffer. Так что я, как этот класс
@validOffer
Class ItemOfferId{
OfferId offer;
ItemId item;
}
@Target({ ElementType.TYPE })
@Retention(RUNTIME)
@Documented
@Constraint(validatedBy = { OfferValidator.class })
public @interface ValidOffer {
String message() default "";
Class<?>[] groups() default {};
Class<? extends Payload>[] payload() default {};
}
public class Validator implements ConstraintValidator<ValidOffer,ItemOfferId>{
//i get here ItemOfferId object and do my custom validation
}
Теперь мой вопрос заключается в том, что есть некоторые ограничения, которые являются специфическими для «получения» услуг, а некоторые являются специфическими для «Установить» сервис. Тот же объект используется как в методах get и set. Есть ли способ сообщить аннотации о том, что он включен, чтобы получить подтверждение. Так что в основном я хочу передать некоторые параметры, основанные на вызове метода времени выполнения.?
Возможно ли это? Я много искал в Интернете, но не смог найти ответ ... Было бы очень приятно, если бы я смог выяснить, как решить эту проблему.
Спасибо, Свати
Если у вас уже есть недопустимые данные в вашей базе данных, в чем смысл проверки во время 'get()'? И в этом случае, что можно сделать с помощью текущей или удаленной системы? – WeaponsGrade