Move validation group determination to ValidationAnnotationUtils

See gh-36274
This commit is contained in:
rstoyanchev
2026-02-10 16:56:33 +00:00
parent 6507367d10
commit 1bb0fdda6b
7 changed files with 54 additions and 24 deletions
@@ -28,6 +28,7 @@ import org.springframework.core.ParameterNameDiscoverer;
import org.springframework.validation.BindingResult;
import org.springframework.validation.MessageCodesResolver;
import org.springframework.validation.SmartValidator;
import org.springframework.validation.annotation.ValidationAnnotationUtils;
import org.springframework.validation.beanvalidation.MethodValidationAdapter;
import org.springframework.validation.method.MethodValidationResult;
import org.springframework.validation.method.MethodValidator;
@@ -70,9 +71,11 @@ public final class HandlerMethodValidator implements MethodValidator {
}
@SuppressWarnings("removal")
@Deprecated(since = "7.0.4", forRemoval = true)
@Override
public Class<?>[] determineValidationGroups(Object target, Method method) {
return this.validationAdapter.determineValidationGroups(target, method);
return ValidationAnnotationUtils.determineValidationGroups(target, method);
}
@Override
@@ -43,6 +43,7 @@ import org.springframework.core.MethodParameter;
import org.springframework.core.ParameterNameDiscoverer;
import org.springframework.util.CollectionUtils;
import org.springframework.util.ObjectUtils;
import org.springframework.validation.annotation.ValidationAnnotationUtils;
import org.springframework.validation.method.MethodValidator;
import org.springframework.web.bind.WebDataBinder;
import org.springframework.web.bind.support.SessionStatus;
@@ -151,7 +152,7 @@ public class InvocableHandlerMethod extends HandlerMethod {
public void setMethodValidator(@Nullable MethodValidator methodValidator) {
this.methodValidator = methodValidator;
this.validationGroups = (methodValidator != null && (shouldValidateArguments() || shouldValidateReturnValue()) ?
methodValidator.determineValidationGroups(getBean(), getBridgedMethod()) : EMPTY_GROUPS);
ValidationAnnotationUtils.determineValidationGroups(getBean(), getBridgedMethod()) : EMPTY_GROUPS);
}