Defer obtaining argument resolver default value
Issue: SPR-17338
This commit is contained in:
parent
80e7819d6f
commit
983bce125f
|
@ -206,8 +206,8 @@ public abstract class AbstractNamedValueArgumentResolver extends HandlerMethodAr
|
|||
private Mono<Object> getDefaultValue(NamedValueInfo namedValueInfo, MethodParameter parameter,
|
||||
BindingContext bindingContext, Model model, ServerWebExchange exchange) {
|
||||
|
||||
Object value = null;
|
||||
try {
|
||||
return Mono.fromSupplier(() -> {
|
||||
Object value = null;
|
||||
if (namedValueInfo.defaultValue != null) {
|
||||
value = resolveStringValue(namedValueInfo.defaultValue);
|
||||
}
|
||||
|
@ -217,11 +217,8 @@ public abstract class AbstractNamedValueArgumentResolver extends HandlerMethodAr
|
|||
value = handleNullValue(namedValueInfo.name, value, parameter.getNestedParameterType());
|
||||
value = applyConversion(value, namedValueInfo, parameter, bindingContext, exchange);
|
||||
handleResolvedValue(value, namedValueInfo.name, parameter, model, exchange);
|
||||
return Mono.justOrEmpty(value);
|
||||
}
|
||||
catch (Throwable ex) {
|
||||
return Mono.error(ex);
|
||||
}
|
||||
return value;
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
Loading…
Reference in New Issue