|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.springframework.web.method.annotation.support.AbstractNamedValueMethodArgumentResolver org.springframework.web.servlet.mvc.method.annotation.support.PathVariableMethodArgumentResolver
public class PathVariableMethodArgumentResolver
Resolves method arguments annotated with an @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.
Nested Class Summary | |
---|---|
private static class |
PathVariableMethodArgumentResolver.PathVariableNamedValueInfo
|
Nested classes/interfaces inherited from class org.springframework.web.method.annotation.support.AbstractNamedValueMethodArgumentResolver |
---|
AbstractNamedValueMethodArgumentResolver.NamedValueInfo |
Constructor Summary | |
---|---|
PathVariableMethodArgumentResolver()
|
Method Summary | |
---|---|
protected AbstractNamedValueMethodArgumentResolver.NamedValueInfo |
createNamedValueInfo(MethodParameter parameter)
Create the AbstractNamedValueMethodArgumentResolver.NamedValueInfo object for the given method parameter. |
protected void |
handleMissingValue(java.lang.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(java.lang.Object arg,
java.lang.String name,
MethodParameter parameter,
ModelAndViewContainer mavContainer,
NativeWebRequest request)
Invoked after a value is resolved. |
protected java.lang.Object |
resolveName(java.lang.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. |
Methods inherited from class org.springframework.web.method.annotation.support.AbstractNamedValueMethodArgumentResolver |
---|
resolveArgument |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public PathVariableMethodArgumentResolver()
Method Detail |
---|
public boolean supportsParameter(MethodParameter parameter)
HandlerMethodArgumentResolver
parameter
- the method parameter to check
true
if this resolver supports the supplied parameter;
false
otherwiseprotected AbstractNamedValueMethodArgumentResolver.NamedValueInfo createNamedValueInfo(MethodParameter parameter)
AbstractNamedValueMethodArgumentResolver
AbstractNamedValueMethodArgumentResolver.NamedValueInfo
object for the given method parameter. Implementations typically
retrieve the method annotation by means of MethodParameter.getParameterAnnotation(Class)
.
createNamedValueInfo
in class AbstractNamedValueMethodArgumentResolver
parameter
- the method parameter
protected java.lang.Object resolveName(java.lang.String name, MethodParameter parameter, NativeWebRequest request) throws java.lang.Exception
AbstractNamedValueMethodArgumentResolver
resolveName
in class AbstractNamedValueMethodArgumentResolver
name
- the name of the value being resolvedparameter
- the method parameter to resolve to an argument valuerequest
- the current request
null
java.lang.Exception
- in case of errorsprotected void handleMissingValue(java.lang.String name, MethodParameter param) throws ServletRequestBindingException
AbstractNamedValueMethodArgumentResolver
AbstractNamedValueMethodArgumentResolver.resolveName(String, MethodParameter, NativeWebRequest)
returned null
and there is no default value. Subclasses typically throw an exception in this case.
handleMissingValue
in class AbstractNamedValueMethodArgumentResolver
name
- the name for the valueparam
- the method parameter
ServletRequestBindingException
protected void handleResolvedValue(java.lang.Object arg, java.lang.String name, MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest request)
AbstractNamedValueMethodArgumentResolver
handleResolvedValue
in class AbstractNamedValueMethodArgumentResolver
arg
- the resolved argument valuename
- the argument nameparameter
- the argument parameter typemavContainer
- the ModelAndViewContainer
, which may be null
request
- the current request
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |