public class InvocableHandlerMethod extends HandlerMethod
HandlerMethodArgumentResolvers.
Use setMessageMethodArgumentResolvers(org.springframework.messaging.handler.invocation.HandlerMethodArgumentResolverComposite) to customize the list of argument resolvers.
HandlerMethod.HandlerMethodParameterlogger| Constructor and Description |
|---|
InvocableHandlerMethod(HandlerMethod handlerMethod)
Create an instance from a
HandlerMethod. |
InvocableHandlerMethod(Object bean,
Method method)
Create an instance from a bean instance and a method.
|
InvocableHandlerMethod(Object bean,
String methodName,
Class<?>... parameterTypes)
Construct a new handler method with the given bean instance, method name and parameters.
|
| Modifier and Type | Method and Description |
|---|---|
protected Object |
doInvoke(Object... args)
Invoke the handler method with the given argument values.
|
protected String |
getDetailedErrorMessage(String message)
Adds HandlerMethod details such as the controller type and method
signature to the given error message.
|
Object |
invoke(Message<?> message,
Object... providedArgs)
Invoke the method after resolving its argument values in the context of the given message.
|
void |
setMessageMethodArgumentResolvers(HandlerMethodArgumentResolverComposite argumentResolvers)
Set
HandlerMethodArgumentResolvers 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, getResolvedFromHandlerMethod, getReturnType, getReturnValueType, getShortLogMessage, hashCode, hasMethodAnnotation, isVoid, toStringpublic InvocableHandlerMethod(HandlerMethod handlerMethod)
HandlerMethod.public InvocableHandlerMethod(Object bean, Method method)
public InvocableHandlerMethod(Object bean, String methodName, Class<?>... parameterTypes) throws NoSuchMethodException
bean - the object beanmethodName - the method nameparameterTypes - the method parameter typesNoSuchMethodException - when the method cannot be foundpublic void setMessageMethodArgumentResolvers(HandlerMethodArgumentResolverComposite argumentResolvers)
HandlerMethodArgumentResolvers to use to use for resolving method argument values.public void setParameterNameDiscoverer(ParameterNameDiscoverer parameterNameDiscoverer)
Default is a DefaultParameterNameDiscoverer.
public Object invoke(Message<?> message, Object... providedArgs) throws Exception
Argument values are commonly resolved through HandlerMethodArgumentResolvers.
The providedArgs parameter however may supply argument values to be used directly,
i.e. without argument resolution.
message - the current message being processedprovidedArgs - "given" arguments matched by type, not resolvedException - raised if no suitable argument resolver can be found,
or if the method raised an exceptionprotected String getDetailedErrorMessage(String message)
message - error message to append the HandlerMethod details to