public class InvocableHandlerMethod extends HandlerMethod
HandlerMethodArgumentResolver
のリストを介して現在の HTTP リクエストから解決された引数値を使用して、基になるメソッドを呼び出す HandlerMethod
の拡張。HandlerMethod.HandlerMethodParameter
logger
修飾子 | コンストラクターと説明 |
---|---|
| InvocableHandlerMethod(HandlerMethod handlerMethod) HandlerMethod からインスタンスを作成します。 |
| InvocableHandlerMethod(ObjectSE bean, MethodSE method) Bean インスタンスとメソッドからインスタンスを作成します。 |
protected | InvocableHandlerMethod(ObjectSE bean, MethodSE method, MessageSource messageSource) サブクラスで使用するための、 MessageSource も受け入れる InvocableHandlerMethod(Object, Method) のバリアント。 |
| InvocableHandlerMethod(ObjectSE bean, StringSE methodName, ClassSE<?>... parameterTypes) 指定された Bean インスタンス、メソッド名、パラメーターを使用して、新しいハンドラーメソッドを構築します。 |
修飾子と型 | メソッドと説明 |
---|---|
protected ObjectSE | doInvoke(ObjectSE... args) 指定された引数値でハンドラーメソッドを呼び出します。 |
protected ObjectSE[] | getMethodArgumentValues(NativeWebRequest request, ModelAndViewContainer mavContainer, ObjectSE... providedArgs) 現在のリクエストのメソッド引数値を取得し、提供された引数値を確認して、構成された引数リゾルバーにフォールバックします。 |
ObjectSE | invokeForRequest(NativeWebRequest request, ModelAndViewContainer mavContainer, ObjectSE... providedArgs) 指定されたリクエストのコンテキストで引数の値を解決した後、メソッドを呼び出します。 |
void | setDataBinderFactory(WebDataBinderFactory dataBinderFactory) 引数リゾルバーに渡す WebDataBinderFactory を設定して、データバインディングおよび型変換の目的で WebDataBinder を作成できるようにします。 |
void | setHandlerMethodArgumentResolvers(HandlerMethodArgumentResolverComposite argumentResolvers) メソッド引数値の解決に使用するように HandlerMethodArgumentResolvers を設定します。 |
void | setParameterNameDiscoverer(ParameterNameDiscoverer parameterNameDiscoverer) 必要に応じてパラメーター名を解決するための ParameterNameDiscoverer を設定します(例: |
assertTargetBean, createWithResolvedBean, equals, findProvidedArgument, formatArgumentError, formatInvokeError, getBean, getBeanType, getBridgedMethod, getMethod, getMethodAnnotation, getMethodParameters, getResolvedFromHandlerMethod, getResponseStatus, getResponseStatusReason, getReturnType, getReturnValueType, getShortLogMessage, hashCode, hasMethodAnnotation, isVoid, toString
cloneSE, finalizeSE, getClassSE, notifySE, notifyAllSE, waitSE, waitSE, waitSE
public InvocableHandlerMethod(HandlerMethod handlerMethod)
HandlerMethod
からインスタンスを作成します。public InvocableHandlerMethod(ObjectSE bean, MethodSE method)
protected InvocableHandlerMethod(ObjectSE bean, MethodSE method, @Nullable MessageSource messageSource)
MessageSource
も受け入れる InvocableHandlerMethod(Object, Method)
のバリアント。public InvocableHandlerMethod(ObjectSE bean, StringSE methodName, ClassSE<?>... parameterTypes) throws NoSuchMethodExceptionSE
bean
- オブジェクト BeanmethodName
- メソッド名 parameterTypes
- メソッドパラメーター型 NoSuchMethodExceptionSE
- メソッドが見つからない場合 public void setHandlerMethodArgumentResolvers(HandlerMethodArgumentResolverComposite argumentResolvers)
HandlerMethodArgumentResolvers
を設定します。public void setParameterNameDiscoverer(ParameterNameDiscoverer parameterNameDiscoverer)
デフォルトは DefaultParameterNameDiscoverer
です。
public void setDataBinderFactory(WebDataBinderFactory dataBinderFactory)
WebDataBinderFactory
を設定して、データバインディングおよび型変換の目的で WebDataBinder
を作成できるようにします。@Nullable public ObjectSE invokeForRequest(NativeWebRequest request, @Nullable ModelAndViewContainer mavContainer, ObjectSE... providedArgs) throws ExceptionSE
引数値は通常、HandlerMethodArgumentResolvers
によって解決されます。ただし、providedArgs
パラメーターは、直接、つまり引数解決なしで使用される引数値を提供する場合があります。提供される引数値の例には、WebDataBinder
、SessionStatus
、スローされた例外インスタンスが含まれます。提供された引数値は、引数リゾルバーの前にチェックされます。
getMethodArgumentValues(org.springframework.web.context.request.NativeWebRequest, org.springframework.web.method.support.ModelAndViewContainer, java.lang.Object...)
にデリゲートし、解決された引数を使用して doInvoke(java.lang.Object...)
を呼び出します。
request
- 現在のリクエスト mavContainer
- このリクエストの ModelAndViewContainerprovidedArgs
- 型によって一致する「指定された」引数、解決されない ExceptionSE
- 適切な引数リゾルバーが見つからない場合、またはメソッドで例外が発生した場合に発生します getMethodArgumentValues(org.springframework.web.context.request.NativeWebRequest, org.springframework.web.method.support.ModelAndViewContainer, java.lang.Object...)
, doInvoke(java.lang.Object...)
protected ObjectSE[] getMethodArgumentValues(NativeWebRequest request, @Nullable ModelAndViewContainer mavContainer, ObjectSE... providedArgs) throws ExceptionSE
結果の配列は doInvoke(java.lang.Object...)
に渡されます。
ExceptionSE
@Nullable protected ObjectSE doInvoke(ObjectSE... args) throws ExceptionSE
ExceptionSE