# Uses of Interface
org.springframework.web.context.request.NativeWebRequest

Packages that use NativeWebRequest
Package
Description
org.springframework.web.accept
This package contains classes used to determine the requested the media types in a request.
org.springframework.web.bind.support
Support classes for web data binding.
org.springframework.web.context.request
Support for generic request context holding, in particular for scoping of application objects per HTTP request or HTTP session.
org.springframework.web.context.request.async
Support for asynchronous request processing.
org.springframework.web.method.annotation
Support classes for annotation-based handler method processing.
org.springframework.web.method.support
Generic support classes for handler method processing.
org.springframework.web.multipart.support
Support classes for the multipart resolution framework.

## Uses of NativeWebRequest in org.springframework.web.accept

Methods in org.springframework.web.accept with parameters of type NativeWebRequest
Modifier and Type
Method
Description
`protected abstract String`
AbstractMappingContentNegotiationStrategy.`getMediaTypeKey(NativeWebRequest request)`
Extract a key from the request to use to look up media types.
`protected String`
ParameterContentNegotiationStrategy.`getMediaTypeKey(NativeWebRequest request)`
`protected String`
PathExtensionContentNegotiationStrategy.`getMediaTypeKey(NativeWebRequest webRequest)`
Deprecated.
`protected MediaType`
AbstractMappingContentNegotiationStrategy.`handleNoMatch(NativeWebRequest request, String key)`
Override to provide handling when a key is not resolved via.
`protected MediaType`
ServletPathExtensionContentNegotiationStrategy.`handleNoMatch(NativeWebRequest webRequest, String extension)`
Deprecated.
Resolve file extension via `ServletContext.getMimeType(String)` and also delegate to base class for a potential `MediaTypeFactory` lookup.
`List<MediaType>`
AbstractMappingContentNegotiationStrategy.`resolveMediaTypeKey(NativeWebRequest webRequest, String key)`
An alternative to `AbstractMappingContentNegotiationStrategy.resolveMediaTypes(NativeWebRequest)` that accepts an already extracted key.
`List<MediaType>`
AbstractMappingContentNegotiationStrategy.`resolveMediaTypes(NativeWebRequest webRequest)`
`List<MediaType>`
ContentNegotiationManager.`resolveMediaTypes(NativeWebRequest request)`
`List<MediaType>`
ContentNegotiationStrategy.`resolveMediaTypes(NativeWebRequest webRequest)`
Resolve the given request to a list of media types.
`List<MediaType>`
FixedContentNegotiationStrategy.`resolveMediaTypes(NativeWebRequest request)`
`List<MediaType>`
HeaderContentNegotiationStrategy.`resolveMediaTypes(NativeWebRequest request)`
Resolve the given request to a list of media types.

## Uses of NativeWebRequest in org.springframework.web.bind.support

Methods in org.springframework.web.bind.support with parameters of type NativeWebRequest
Modifier and Type
Method
Description
`final WebDataBinder`
DefaultDataBinderFactory.`createBinder(NativeWebRequest webRequest, Object target, String objectName)`
Create a new `WebDataBinder` for the given target object and initialize it through a `WebBindingInitializer`.
`final WebDataBinder`
DefaultDataBinderFactory.`createBinder(NativeWebRequest webRequest, Object target, String objectName, org.springframework.core.ResolvableType type)`
Variant of `WebDataBinderFactory.createBinder(NativeWebRequest, Object, String)` with a `ResolvableType` for which the `DataBinder` is created.
`WebDataBinder`
WebDataBinderFactory.`createBinder(NativeWebRequest webRequest, Object target, String objectName)`
Create a `WebDataBinder` for the given object.
`default WebDataBinder`
WebDataBinderFactory.`createBinder(NativeWebRequest webRequest, Object target, String objectName, org.springframework.core.ResolvableType targetType)`
Variant of `WebDataBinderFactory.createBinder(NativeWebRequest, Object, String)` with a `ResolvableType` for which the `DataBinder` is created.
`protected WebDataBinder`
DefaultDataBinderFactory.`createBinderInstance(Object target, String objectName, NativeWebRequest webRequest)`
Extension point to create the WebDataBinder instance.
`protected void`
DefaultDataBinderFactory.`initBinder(WebDataBinder dataBinder, NativeWebRequest webRequest)`
Extension point to further initialize the created data binder instance (for example, with `@InitBinder` methods) after "global" initialization via `WebBindingInitializer`.
`Object`
WebArgumentResolver.`resolveArgument(org.springframework.core.MethodParameter methodParameter, NativeWebRequest webRequest)`
Resolve an argument for the given handler method parameter within the given web request.

## Uses of NativeWebRequest in org.springframework.web.context.request

Classes in org.springframework.web.context.request that implement NativeWebRequest
Modifier and Type
Class
Description
`class`
`FacesWebRequest`
`WebRequest` adapter for a JSF `FacesContext`.
`class`
`ServletWebRequest`
`WebRequest` adapter for an `HttpServletRequest`.

## Uses of NativeWebRequest in org.springframework.web.context.request.async

Subinterfaces of NativeWebRequest in org.springframework.web.context.request.async
Modifier and Type
Interface
Description
`interface`
`AsyncWebRequest`
Extends `NativeWebRequest` with methods for asynchronous request processing.
Classes in org.springframework.web.context.request.async that implement NativeWebRequest
Modifier and Type
Class
Description
`class`
`StandardServletAsyncWebRequest`
A Servlet implementation of `AsyncWebRequest`.
Methods in org.springframework.web.context.request.async with parameters of type NativeWebRequest
Modifier and Type
Method
Description
`default <T> void`
CallableProcessingInterceptor.`afterCompletion(NativeWebRequest request, Callable<T> task)`
Invoked from a container thread when async processing completes for any reason including timeout or network error.
`default <T> void`
DeferredResultProcessingInterceptor.`afterCompletion(NativeWebRequest request, DeferredResult<T> deferredResult)`
Invoked from a container thread when an async request completed for any reason including timeout and network error.
`default <T> void`
CallableProcessingInterceptor.`beforeConcurrentHandling(NativeWebRequest request, Callable<T> task)`
Invoked before the start of concurrent handling in the original thread in which the `Callable` is submitted for concurrent handling.
`default <T> void`
DeferredResultProcessingInterceptor.`beforeConcurrentHandling(NativeWebRequest request, DeferredResult<T> deferredResult)`
Invoked immediately before the start of concurrent handling, in the same thread that started it.
`default <T> Object`
CallableProcessingInterceptor.`handleError(NativeWebRequest request, Callable<T> task, Throwable t)`
Invoked from a container thread when an error occurred while processing the async request before the `Callable` task completes.
`default <T> boolean`
DeferredResultProcessingInterceptor.`handleError(NativeWebRequest request, DeferredResult<T> deferredResult, Throwable t)`
Invoked from a container thread when an error occurred while processing an async request before the `DeferredResult` has been set.
`default <T> Object`
CallableProcessingInterceptor.`handleTimeout(NativeWebRequest request, Callable<T> task)`
Invoked from a container thread when the async request times out before the `Callable` task completes.
`default <T> boolean`
DeferredResultProcessingInterceptor.`handleTimeout(NativeWebRequest request, DeferredResult<T> deferredResult)`
Invoked from a container thread when an async request times out before the `DeferredResult` has been set.
`<T> Object`
TimeoutCallableProcessingInterceptor.`handleTimeout(NativeWebRequest request, Callable<T> task)`
`<T> boolean`
TimeoutDeferredResultProcessingInterceptor.`handleTimeout(NativeWebRequest request, DeferredResult<T> result)`
`default <T> void`
CallableProcessingInterceptor.`postProcess(NativeWebRequest request, Callable<T> task, Object concurrentResult)`
Invoked after the `Callable` has produced a result in the async thread in which the `Callable` is executed.
`default <T> void`
DeferredResultProcessingInterceptor.`postProcess(NativeWebRequest request, DeferredResult<T> deferredResult, Object concurrentResult)`
Invoked after a `DeferredResult` has been set, via `DeferredResult.setResult(Object)` or `DeferredResult.setErrorResult(Object)`, and is also ready to handle the concurrent result.
`default <T> void`
CallableProcessingInterceptor.`preProcess(NativeWebRequest request, Callable<T> task)`
Invoked after the start of concurrent handling in the async thread in which the `Callable` is executed and before the actual invocation of the `Callable`.
`default <T> void`
DeferredResultProcessingInterceptor.`preProcess(NativeWebRequest request, DeferredResult<T> deferredResult)`
Invoked immediately after the start of concurrent handling, in the same thread that started it.

## Uses of NativeWebRequest in org.springframework.web.method.annotation

Methods in org.springframework.web.method.annotation that return NativeWebRequest
Modifier and Type
Method
Description
`protected abstract NativeWebRequest`
AbstractWebArgumentResolverAdapter.`getWebRequest()`
Required for access to NativeWebRequest in `AbstractWebArgumentResolverAdapter.supportsParameter(org.springframework.core.MethodParameter)`.
Methods in org.springframework.web.method.annotation with parameters of type NativeWebRequest
Modifier and Type
Method
Description
`protected void`
ModelAttributeMethodProcessor.`bindRequestParameters(WebDataBinder binder, NativeWebRequest request)`
Extension point to bind the request to the target object via setters/fields.
`protected void`
ModelAttributeMethodProcessor.`constructAttribute(WebDataBinder binder, NativeWebRequest request)`
Extension point to create the attribute, binding the request to constructor args.
`protected Object`
ModelAttributeMethodProcessor.`createAttribute(String attributeName, org.springframework.core.MethodParameter parameter, WebDataBinderFactory binderFactory, NativeWebRequest request)`
Extension point to create the model attribute if not found in the model, with subsequent parameter binding through bean properties (unless suppressed).
`protected void`
AbstractNamedValueMethodArgumentResolver.`handleMissingValue(String name, org.springframework.core.MethodParameter parameter, NativeWebRequest request)`
Invoked when a named value is required, but `AbstractNamedValueMethodArgumentResolver.resolveName(String, MethodParameter, NativeWebRequest)` returned `null` and there is no default value.
`protected void`
RequestParamMethodArgumentResolver.`handleMissingValue(String name, org.springframework.core.MethodParameter parameter, NativeWebRequest request)`
`protected void`
AbstractCookieValueMethodArgumentResolver.`handleMissingValueAfterConversion(String name, org.springframework.core.MethodParameter parameter, NativeWebRequest request)`
`protected void`
AbstractNamedValueMethodArgumentResolver.`handleMissingValueAfterConversion(String name, org.springframework.core.MethodParameter parameter, NativeWebRequest request)`
Invoked when a named value is present but becomes `null` after conversion.
`protected void`
RequestHeaderMethodArgumentResolver.`handleMissingValueAfterConversion(String name, org.springframework.core.MethodParameter parameter, NativeWebRequest request)`
`protected void`
RequestParamMethodArgumentResolver.`handleMissingValueAfterConversion(String name, org.springframework.core.MethodParameter parameter, NativeWebRequest request)`
`protected void`
RequestParamMethodArgumentResolver.`handleMissingValueInternal(String name, org.springframework.core.MethodParameter parameter, NativeWebRequest request, boolean missingAfterConversion)`
`protected void`
AbstractNamedValueMethodArgumentResolver.`handleResolvedValue(Object arg, String name, org.springframework.core.MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest)`
Invoked after a value is resolved.
`void`
MapMethodProcessor.`handleReturnValue(Object returnValue, org.springframework.core.MethodParameter returnType, ModelAndViewContainer mavContainer, NativeWebRequest webRequest)`
`void`
ModelAttributeMethodProcessor.`handleReturnValue(Object returnValue, org.springframework.core.MethodParameter returnType, ModelAndViewContainer mavContainer, NativeWebRequest webRequest)`
Add non-null return values to the `ModelAndViewContainer`.
`void`
ModelMethodProcessor.`handleReturnValue(Object returnValue, org.springframework.core.MethodParameter returnType, ModelAndViewContainer mavContainer, NativeWebRequest webRequest)`
`void`
InitBinderDataBinderFactory.`initBinder(WebDataBinder dataBinder, NativeWebRequest request)`
Initialize a WebDataBinder with `@InitBinder` methods.
`void`
ModelFactory.`initModel(NativeWebRequest request, ModelAndViewContainer container, HandlerMethod handlerMethod)`
Populate the model in the following order: Retrieve "known" session attributes listed as `@SessionAttributes`.
`final Object`
AbstractNamedValueMethodArgumentResolver.`resolveArgument(org.springframework.core.MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest, WebDataBinderFactory binderFactory)`
`Object`
AbstractWebArgumentResolverAdapter.`resolveArgument(org.springframework.core.MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest, WebDataBinderFactory binderFactory)`
Delegate to the `WebArgumentResolver` instance.
`Object`
ErrorsMethodArgumentResolver.`resolveArgument(org.springframework.core.MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest, WebDataBinderFactory binderFactory)`
`Object`
MapMethodProcessor.`resolveArgument(org.springframework.core.MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest, WebDataBinderFactory binderFactory)`
`final Object`
ModelAttributeMethodProcessor.`resolveArgument(org.springframework.core.MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest, WebDataBinderFactory binderFactory)`
Resolve the argument from the model or if not found instantiate it with its default if it is available.
`Object`
ModelMethodProcessor.`resolveArgument(org.springframework.core.MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest, WebDataBinderFactory binderFactory)`
`Object`
RequestHeaderMapMethodArgumentResolver.`resolveArgument(org.springframework.core.MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest, WebDataBinderFactory binderFactory)`
`Object`
RequestParamMapMethodArgumentResolver.`resolveArgument(org.springframework.core.MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest, WebDataBinderFactory binderFactory)`
`Object`
SessionStatusMethodArgumentResolver.`resolveArgument(org.springframework.core.MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest, WebDataBinderFactory binderFactory)`
`protected abstract Object`
AbstractNamedValueMethodArgumentResolver.`resolveName(String name, org.springframework.core.MethodParameter parameter, NativeWebRequest request)`
Resolve the given parameter type and value name into an argument value.
`protected Object`
ExpressionValueMethodArgumentResolver.`resolveName(String name, org.springframework.core.MethodParameter parameter, NativeWebRequest webRequest)`
`protected Object`
RequestHeaderMethodArgumentResolver.`resolveName(String name, org.springframework.core.MethodParameter parameter, NativeWebRequest request)`
`protected Object`
RequestParamMethodArgumentResolver.`resolveName(String name, org.springframework.core.MethodParameter parameter, NativeWebRequest request)`
`void`
ModelFactory.`updateModel(NativeWebRequest request, ModelAndViewContainer container)`
Promote model attributes listed as `@SessionAttributes` to the session.

## Uses of NativeWebRequest in org.springframework.web.method.support

Methods in org.springframework.web.method.support with parameters of type NativeWebRequest
Modifier and Type
Method
Description
`protected Object[]`
InvocableHandlerMethod.`getMethodArgumentValues(NativeWebRequest request, ModelAndViewContainer mavContainer, Object... providedArgs)`
Get the method argument values for the current request, checking the provided argument values and falling back to the configured argument resolvers.
`void`
HandlerMethodReturnValueHandler.`handleReturnValue(Object returnValue, org.springframework.core.MethodParameter returnType, ModelAndViewContainer mavContainer, NativeWebRequest webRequest)`
Handle the given return value by adding attributes to the model and setting a view or setting the `ModelAndViewContainer.setRequestHandled(boolean)` flag to `true` to indicate the response has been handled directly.
`void`
HandlerMethodReturnValueHandlerComposite.`handleReturnValue(Object returnValue, org.springframework.core.MethodParameter returnType, ModelAndViewContainer mavContainer, NativeWebRequest webRequest)`
Iterate over registered `HandlerMethodReturnValueHandlers` and invoke the one that supports it.
`Object`
InvocableHandlerMethod.`invokeForRequest(NativeWebRequest request, ModelAndViewContainer mavContainer, Object... providedArgs)`
Invoke the method after resolving its argument values in the context of the given request.
`Object`
HandlerMethodArgumentResolver.`resolveArgument(org.springframework.core.MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest, WebDataBinderFactory binderFactory)`
Resolves a method parameter into an argument value from a given request.
`Object`
HandlerMethodArgumentResolverComposite.`resolveArgument(org.springframework.core.MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest, WebDataBinderFactory binderFactory)`
Iterate over registered `HandlerMethodArgumentResolvers` and invoke the one that supports it.

## Uses of NativeWebRequest in org.springframework.web.multipart.support

Methods in org.springframework.web.multipart.support with parameters of type NativeWebRequest
Modifier and Type
Method
Description
`static MultipartRequest`
MultipartResolutionDelegate.`resolveMultipartRequest(NativeWebRequest webRequest)`