Class RequestBodyMethodArgumentResolver

All Implemented Interfaces:
HandlerMethodArgumentResolver

public class RequestBodyMethodArgumentResolver extends AbstractMessageReaderArgumentResolver
Resolves method arguments annotated with @RequestBody by reading the body of the request through a compatible HttpMessageReader.

An @RequestBody method argument is also validated if it is annotated with @jakarta.validation.Valid or Validated. Validation failure results in an ServerWebInputException.

Since:
5.2
Author:
Sebastien Deleuze, Stephane Maldini, Rossen Stoyanchev
  • Constructor Details

    • RequestBodyMethodArgumentResolver

      public RequestBodyMethodArgumentResolver(List<org.springframework.http.codec.HttpMessageReader<?>> readers, org.springframework.core.ReactiveAdapterRegistry registry)
  • Method Details

    • supportsParameter

      public boolean supportsParameter(org.springframework.core.MethodParameter parameter)
      Description copied from interface: HandlerMethodArgumentResolver
      Whether this resolver supports the given method parameter.
      Parameters:
      parameter - the method parameter
    • resolveArgument

      public reactor.core.publisher.Mono<Object> resolveArgument(org.springframework.core.MethodParameter param, BindingContext bindingContext, org.springframework.web.server.ServerWebExchange exchange)
      Description copied from interface: HandlerMethodArgumentResolver
      Resolve the value for the method parameter.
      Parameters:
      param - the method parameter
      bindingContext - the binding context to use
      exchange - the current exchange
      Returns:
      Mono for the argument value, possibly empty