public class InvocableHandlerMethod extends HandlerMethod
HandlerMethodArgumentResolver
s.
Use setMessageMethodArgumentResolvers(HandlerMethodArgumentResolver)
to customize the list of argument resolvers.
logger
Constructor and Description |
---|
InvocableHandlerMethod(HandlerMethod handlerMethod)
Create an instance from a
HandlerMethod . |
InvocableHandlerMethod(java.lang.Object bean,
java.lang.reflect.Method method)
Create an instance from a bean instance and a method.
|
InvocableHandlerMethod(java.lang.Object bean,
java.lang.String methodName,
java.lang.Class<?>... parameterTypes)
Construct a new handler method with the given bean instance, method name and parameters.
|
Modifier and Type | Method and Description |
---|---|
protected java.lang.String |
getDetailedErrorMessage(java.lang.String message)
Adds HandlerMethod details such as the controller type and method signature to the given error message.
|
java.lang.Object |
invoke(Message<?> message,
java.lang.Object... providedArgs)
Invoke the method with the given message.
|
void |
setMessageMethodArgumentResolvers(HandlerMethodArgumentResolver argumentResolvers)
Set
HandlerMethodArgumentResolver s to use to use for resolving method argument values. |
void |
setParameterNameDiscoverer(ParameterNameDiscoverer parameterNameDiscoverer)
Set the ParameterNameDiscoverer for resolving parameter names when needed
(e.g.
|
createWithResolvedBean, equals, getBean, getBeanType, getBridgedMethod, getMethod, getMethodAnnotation, getMethodParameters, getReturnType, getReturnValueType, getShortLogMessage, hashCode, isVoid, toString
public InvocableHandlerMethod(HandlerMethod handlerMethod)
HandlerMethod
.public InvocableHandlerMethod(java.lang.Object bean, java.lang.reflect.Method method)
public InvocableHandlerMethod(java.lang.Object bean, java.lang.String methodName, java.lang.Class<?>... parameterTypes) throws java.lang.NoSuchMethodException
bean
- the object beanmethodName
- the method nameparameterTypes
- the method parameter typesjava.lang.NoSuchMethodException
- when the method cannot be foundpublic void setMessageMethodArgumentResolvers(HandlerMethodArgumentResolver argumentResolvers)
HandlerMethodArgumentResolver
s to use to use for resolving method argument values.public void setParameterNameDiscoverer(ParameterNameDiscoverer parameterNameDiscoverer)
Default is a DefaultParameterNameDiscoverer
.
public final java.lang.Object invoke(Message<?> message, java.lang.Object... providedArgs) throws java.lang.Exception
java.lang.Exception
- raised if no suitable argument resolver can be found,
or the method raised an exceptionprotected java.lang.String getDetailedErrorMessage(java.lang.String message)
message
- error message to append the HandlerMethod details to