Class RequestParamArgumentResolver
java.lang.Object
org.springframework.web.service.invoker.AbstractNamedValueArgumentResolver
org.springframework.web.service.invoker.RequestParamArgumentResolver
- All Implemented Interfaces:
HttpServiceArgumentResolver
HttpServiceArgumentResolver
for @RequestParam
annotated arguments.
When "content-type"
is set to
"application/x-www-form-urlencoded"
, request parameters are encoded
in the request body. Otherwise, they are added as URL query parameters.
The argument may be:
Map<String, ?>
orMultiValueMap<String, ?>
with multiple request parameter and value(s).Collection
or an array of request parameters.- An individual request parameter.
Individual request parameters may be Strings or Objects to be converted to
String values through the configured ConversionService
.
If the value is required but null
, IllegalArgumentException
is raised. The value is not required if:
RequestParam.required()
is set tofalse
RequestParam.defaultValue()
provides a fallback value- The argument is declared as
Optional
- Since:
- 6.0
- Author:
- Rossen Stoyanchev
-
Nested Class Summary
Nested classes/interfaces inherited from class org.springframework.web.service.invoker.AbstractNamedValueArgumentResolver
AbstractNamedValueArgumentResolver.NamedValueInfo
-
Field Summary
Fields inherited from class org.springframework.web.service.invoker.AbstractNamedValueArgumentResolver
logger
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected void
addRequestValue
(String name, Object value, MethodParameter parameter, HttpRequestValues.Builder requestValues) Add the given, single request value.createNamedValueInfo
(MethodParameter parameter) Return information about the request value, ornull
if the parameter does not represent a request value of interest.Methods inherited from class org.springframework.web.service.invoker.AbstractNamedValueArgumentResolver
resolve
-
Constructor Details
-
RequestParamArgumentResolver
-
-
Method Details
-
createNamedValueInfo
@Nullable protected AbstractNamedValueArgumentResolver.NamedValueInfo createNamedValueInfo(MethodParameter parameter) Description copied from class:AbstractNamedValueArgumentResolver
Return information about the request value, ornull
if the parameter does not represent a request value of interest.- Specified by:
createNamedValueInfo
in classAbstractNamedValueArgumentResolver
-
addRequestValue
protected void addRequestValue(String name, Object value, MethodParameter parameter, HttpRequestValues.Builder requestValues) Description copied from class:AbstractNamedValueArgumentResolver
Add the given, single request value. This may be called multiples times if the request value is multivalued.If the resolver was created with a
ConversionService
, the value will have been converted to a String and may be cast down.- Specified by:
addRequestValue
in classAbstractNamedValueArgumentResolver
- Parameters:
name
- the request value namevalue
- the valueparameter
- the method parameter type, nested if Map, List/array, or OptionalrequestValues
- builder to add the request value to
-