public class PathVariableMethodArgumentResolver extends AbstractNamedValueMethodArgumentResolver
PathVariable.
An @PathVariable is a named value that gets resolved from a URI template variable. It is always
required and does not have a default value to fall back on. See the base class
AbstractNamedValueMethodArgumentResolver for more information on how named values are processed.
A WebDataBinder is invoked to apply type conversion to resolved path variable values that
don't yet match the method parameter type.
AbstractNamedValueMethodArgumentResolver.NamedValueInfo| Constructor and Description |
|---|
PathVariableMethodArgumentResolver() |
| Modifier and Type | Method and Description |
|---|---|
protected AbstractNamedValueMethodArgumentResolver.NamedValueInfo |
createNamedValueInfo(MethodParameter parameter)
Create the
AbstractNamedValueMethodArgumentResolver.NamedValueInfo object for the given method parameter. |
protected void |
handleMissingValue(String name,
MethodParameter param)
Invoked when a named value is required, but
AbstractNamedValueMethodArgumentResolver.resolveName(String, MethodParameter, NativeWebRequest)
returned null and there is no default value. |
protected void |
handleResolvedValue(Object arg,
String name,
MethodParameter parameter,
ModelAndViewContainer mavContainer,
NativeWebRequest request)
Invoked after a value is resolved.
|
protected Object |
resolveName(String name,
MethodParameter parameter,
NativeWebRequest request)
Resolves the given parameter type and value name into an argument value.
|
boolean |
supportsParameter(MethodParameter parameter)
Whether the given method parameter is
supported by this resolver.
|
resolveArgumentpublic boolean supportsParameter(MethodParameter parameter)
HandlerMethodArgumentResolverparameter - the method parameter to checktrue if this resolver supports the supplied parameter;
false otherwiseprotected AbstractNamedValueMethodArgumentResolver.NamedValueInfo createNamedValueInfo(MethodParameter parameter)
AbstractNamedValueMethodArgumentResolverAbstractNamedValueMethodArgumentResolver.NamedValueInfo object for the given method parameter. Implementations typically
retrieve the method annotation by means of MethodParameter.getParameterAnnotation(Class).createNamedValueInfo in class AbstractNamedValueMethodArgumentResolverparameter - the method parameterprotected Object resolveName(String name, MethodParameter parameter, NativeWebRequest request) throws Exception
AbstractNamedValueMethodArgumentResolverresolveName in class AbstractNamedValueMethodArgumentResolvername - the name of the value being resolvedparameter - the method parameter to resolve to an argument valuerequest - the current requestnullException - in case of errorsprotected void handleMissingValue(String name, MethodParameter param) throws ServletRequestBindingException
AbstractNamedValueMethodArgumentResolverAbstractNamedValueMethodArgumentResolver.resolveName(String, MethodParameter, NativeWebRequest)
returned null and there is no default value. Subclasses typically throw an exception in this case.handleMissingValue in class AbstractNamedValueMethodArgumentResolvername - the name for the valueparam - the method parameterServletRequestBindingExceptionprotected void handleResolvedValue(Object arg, String name, MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest request)
AbstractNamedValueMethodArgumentResolverhandleResolvedValue in class AbstractNamedValueMethodArgumentResolverarg - the resolved argument valuename - the argument nameparameter - the argument parameter typemavContainer - the ModelAndViewContainer, which may be nullrequest - the current requestCopyright © 2013. All Rights Reserved.