クラス InvocableHandlerMethod
java.lang.ObjectSE
org.springframework.core.annotation.AnnotatedMethod
org.springframework.messaging.handler.HandlerMethod
org.springframework.messaging.handler.invocation.InvocableHandlerMethod
HandlerMethodArgumentResolver
のリストを介して現在の HTTP リクエストから解決された引数値を使用して、基になるメソッドを呼び出す HandlerMethod
の拡張。- 導入:
- 4.0
- 作成者:
- Rossen Stoyanchev, Juergen Hoeller
ネストされたクラスのサマリー
クラス org.springframework.core.annotation.AnnotatedMethod から継承されたネストクラス / インターフェース
AnnotatedMethod.AnnotatedMethodParameter
フィールドサマリー
クラス org.springframework.messaging.handler.HandlerMethod から継承されたフィールド
defaultLogger, logger
コンストラクターのサマリー
コンストラクター説明InvocableHandlerMethod
(ObjectSE bean, MethodSE method) Bean インスタンスとメソッドからインスタンスを作成します。InvocableHandlerMethod
(ObjectSE bean, StringSE methodName, ClassSE<?>... parameterTypes) 指定された Bean インスタンス、メソッド名、パラメーターを使用して、新しいハンドラーメソッドを構築します。InvocableHandlerMethod
(HandlerMethod handlerMethod) HandlerMethod
からインスタンスを作成します。メソッドのサマリー
修飾子と型メソッド説明protected ObjectSE
指定された引数値でハンドラーメソッドを呼び出します。protected ObjectSE[]
getMethodArgumentValues
(Message<?> message, ObjectSE... providedArgs) 現在のメッセージのメソッド引数値を取得し、提供された引数値を確認して、構成された引数リゾルバーにフォールバックします。指定されたメッセージのコンテキストで引数値を解決した後、メソッドを呼び出します。void
setMessageMethodArgumentResolvers
(HandlerMethodArgumentResolverComposite argumentResolvers) メソッド引数値の解決に使用するようにHandlerMethodArgumentResolvers
を設定します。void
setParameterNameDiscoverer
(ParameterNameDiscoverer parameterNameDiscoverer) 必要に応じてパラメーター名を解決するための ParameterNameDiscoverer を設定します(例:クラス org.springframework.messaging.handler.HandlerMethod から継承されたメソッド
assertTargetBean, createWithResolvedBean, equals, formatInvokeError, getBean, getBeanType, getContainingClass, getLogger, getResolvedFromHandlerMethod, getShortLogMessage, hashCode, setLogger
クラス org.springframework.core.annotation.AnnotatedMethod から継承されたメソッド
findProvidedArgument, formatArgumentError, getBridgedMethod, getMethod, getMethodAnnotation, getMethodParameters, getReturnType, getReturnValueType, hasMethodAnnotation, isVoid, toString
コンストラクターの詳細
InvocableHandlerMethod
HandlerMethod
からインスタンスを作成します。InvocableHandlerMethod
Bean インスタンスとメソッドからインスタンスを作成します。InvocableHandlerMethod
public InvocableHandlerMethod(ObjectSE bean, StringSE methodName, ClassSE<?>... parameterTypes) throws NoSuchMethodExceptionSE 指定された Bean インスタンス、メソッド名、パラメーターを使用して、新しいハンドラーメソッドを構築します。- パラメーター:
bean
- オブジェクト BeanmethodName
- メソッド名parameterTypes
- メソッドパラメーター型- 例外:
NoSuchMethodExceptionSE
- メソッドが見つからない場合
メソッドの詳細
setMessageMethodArgumentResolvers
public void setMessageMethodArgumentResolvers(HandlerMethodArgumentResolverComposite argumentResolvers) メソッド引数値の解決に使用するようにHandlerMethodArgumentResolvers
を設定します。setParameterNameDiscoverer
必要に応じてパラメーター名を解決するための ParameterNameDiscoverer を設定します(例: デフォルトのリクエスト属性名)。デフォルトは
DefaultParameterNameDiscoverer
です。invoke
@Nullable public ObjectSE invoke(Message<?> message, @Nullable ObjectSE... providedArgs) throws ExceptionSE 指定されたメッセージのコンテキストで引数値を解決した後、メソッドを呼び出します。引数値は通常、
HandlerMethodArgumentResolvers
によって解決されます。ただし、providedArgs
パラメーターは、直接、つまり引数解決なしで使用される引数値を提供する場合があります。getMethodArgumentValues(org.springframework.messaging.Message<?>, java.lang.Object...)
にデリゲートし、解決された引数を使用してdoInvoke(java.lang.Object...)
を呼び出します。- パラメーター:
message
- 処理中の現在のメッセージprovidedArgs
- 型によって一致する「指定された」引数、解決されない- 戻り値:
- 呼び出されたメソッドによって返される生の値
- 例外:
ExceptionSE
- 適切な引数リゾルバーが見つからない場合、またはメソッドで例外が発生した場合に発生します- 関連事項:
getMethodArgumentValues
protected ObjectSE[] getMethodArgumentValues(Message<?> message, @Nullable ObjectSE... providedArgs) throws ExceptionSE 現在のメッセージのメソッド引数値を取得し、提供された引数値を確認して、構成された引数リゾルバーにフォールバックします。結果の配列は
doInvoke(java.lang.Object...)
に渡されます。- 例外:
ExceptionSE
- 導入:
- 5.1.2
doInvoke
指定された引数値でハンドラーメソッドを呼び出します。- 例外:
ExceptionSE