public class HttpRequestExecutingMessageHandler extends AbstractHttpRequestExecutingMessageHandler
RestTemplate
インスタンスに委譲して HTTP リクエストを実行する MessageHandler
実装。'expectReply' フラグが true (デフォルト) に設定されている場合、HTTP レスポンスからレスポンスメッセージが生成されます。そのレスポンスに本文が含まれている場合は、それがレスポンスメッセージのペイロードとして使用されます。それ以外の場合、レスポンスメッセージのペイロードには、HttpStatus
列挙のインスタンスとしてレスポンスステータスが含まれます。レスポンス本文がある場合は、代わりに HttpStatus
列挙インスタンスがレスポンスの MessageHeaders にコピーされます。どちらの場合も、レスポンスヘッダーは、このハンドラーの HeaderMapper
インスタンスによってレスポンスメッセージのヘッダーにマップされます。AbstractReplyProducingMessageHandler.RequestHandler
IntegrationManagement.ManagementOverrides
uriFactory
messagingTemplate
EXPRESSION_PARSER, logger
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
METER_PREFIX, RECEIVE_COUNTER_NAME, SEND_TIMER_NAME
コンストラクターと説明 |
---|
HttpRequestExecutingMessageHandler(Expression uriExpression) 提供された URI 式にリクエストを送信するハンドラーを作成します。 |
HttpRequestExecutingMessageHandler(Expression uriExpression, RestTemplate restTemplate) 提供された RestTemplate を使用して、提供された URI にリクエストを送信するハンドラーを作成します |
HttpRequestExecutingMessageHandler(StringSE uri) 指定された URI にリクエストを送信するハンドラーを作成します。 |
HttpRequestExecutingMessageHandler(StringSE uri, RestTemplate restTemplate) 提供された RestTemplate を使用して、提供された URI にリクエストを送信するハンドラーを作成します |
HttpRequestExecutingMessageHandler(URISE uri) 指定された URI にリクエストを送信するハンドラーを作成します。 |
修飾子と型 | メソッドと説明 |
---|---|
protected ObjectSE | exchange(ObjectSE uri, HttpMethod httpMethod, HttpEntity<?> httpRequest, ObjectSE expectedResponseType, Message<?> requestMessage, MapSE<StringSE,?> uriVariables) |
StringSE | getComponentType() サブクラスはこのメソッドを実装して、コンポーネント型情報を提供できます。 |
void | setEncodingMode(DefaultUriBuilderFactory.EncodingMode encodingMode) 使用するエンコードモードを設定します。 |
void | setErrorHandler(ResponseErrorHandler errorHandler) 基になる RestTemplate の ResponseErrorHandler を設定します。 |
void | setMessageConverters(ListSE<HttpMessageConverter<?>> messageConverters) 基礎となる RestTemplate で使用される HttpMessageConverter のリストを設定します。 |
void | setRequestFactory(ClientHttpRequestFactory requestFactory) 基になる RestTemplate の ClientHttpRequestFactory を設定します。 |
doInit, evaluateTypeFromExpression, getIntegrationPatternType, getReply, handleRequestMessage, isExpectReply, mapHeaders, setCharset, setEncodeUri, setExpectedResponseType, setExpectedResponseTypeExpression, setExpectReply, setExtractPayload, setHeaderMapper, setHttpMethod, setHttpMethodExpression, setTransferCookies, setTrustedSpel, setUriVariableExpressions, setUriVariablesExpression
doInvokeAdvisedRequestHandler, getBeanClassLoader, getRequiresReply, handleMessageInternal, hasAdviceChain, onInit, setAdviceChain, setBeanClassLoader, setRequiresReply
addNotPropagatedHeaders, createOutputMessage, getNotPropagatedHeaders, getOutputChannel, isAsync, messageBuilderForReply, produceOutput, resolveErrorChannel, sendErrorMessage, sendOutput, sendOutputs, setAsync, setNotPropagatedHeaders, setOutputChannel, setOutputChannelName, setSendTimeout, shouldCopyRequestHeaders, shouldSplitOutput, updateNotPropagatedHeaders
handleMessage, onComplete, onError, onNext, onSubscribe
buildSendTimer, destroy, getManagedName, getManagedType, getMetricsCaptor, getOrder, getOverrides, isLoggingEnabled, registerMetricsCaptor, sendTimer, setLoggingEnabled, setManagedName, setManagedType, setOrder, setShouldTrack, shouldTrack
afterPropertiesSet, extractTypeIfPossible, generateId, getApplicationContext, getApplicationContextId, getBeanDescription, getBeanFactory, getBeanName, getChannelResolver, getComponentName, getConversionService, getExpression, getIntegrationProperties, getIntegrationProperty, getMessageBuilderFactory, getTaskScheduler, isInitialized, setApplicationContext, setBeanFactory, setBeanName, setChannelResolver, setComponentName, setConversionService, setMessageBuilderFactory, setPrimaryExpression, setTaskScheduler, toString
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, waitSE, waitSE, waitSE
getThisAs
getBeanName, getComponentName
public HttpRequestExecutingMessageHandler(URISE uri)
uri
- URI。public HttpRequestExecutingMessageHandler(StringSE uri)
uri
- URI。public HttpRequestExecutingMessageHandler(Expression uriExpression)
uriExpression
- URI 式。public HttpRequestExecutingMessageHandler(StringSE uri, RestTemplate restTemplate)
uri
- URI。restTemplate
- Rest テンプレート。public HttpRequestExecutingMessageHandler(Expression uriExpression, @Nullable RestTemplate restTemplate)
uriExpression
- メッセージオブジェクトおよび BeanFactory
に対して解決できる SpEL 式。restTemplate
- Rest テンプレート。public StringSE getComponentType()
IntegrationObjectSupport
NamedComponent
の getComponentType
MessageHandlerSupport
の getComponentType
public void setErrorHandler(ResponseErrorHandler errorHandler)
RestTemplate
の ResponseErrorHandler
を設定します。errorHandler
- エラーハンドラー。RestTemplate.setErrorHandler(ResponseErrorHandler)
public void setMessageConverters(ListSE<HttpMessageConverter<?>> messageConverters)
RestTemplate
で使用される HttpMessageConverter
のリストを設定します。この方法で構成されたコンバーターは、デフォルトのコンバーターをオーバーライドします。messageConverters
- メッセージコンバーター。RestTemplate.setMessageConverters(java.util.List)
public void setRequestFactory(ClientHttpRequestFactory requestFactory)
RestTemplate
の ClientHttpRequestFactory
を設定します。requestFactory
- リクエストファクトリ。InterceptingHttpAccessor.setRequestFactory(ClientHttpRequestFactory)
public void setEncodingMode(DefaultUriBuilderFactory.EncodingMode encodingMode)
AbstractHttpRequestExecutingMessageHandler
DefaultUriBuilderFactory.EncodingMode#TEMPLATE_AND_VALUES
に設定されています。より複雑なシナリオでは、外部から提供された RestTemplate
で UriTemplateHandler
を構成することを検討してください。AbstractHttpRequestExecutingMessageHandler
の setEncodingMode
encodingMode
- uri エンコーディングに使用するモード @Nullable protected ObjectSE exchange(ObjectSE uri, HttpMethod httpMethod, HttpEntity<?> httpRequest, ObjectSE expectedResponseType, Message<?> requestMessage, MapSE<StringSE,?> uriVariables)
AbstractHttpRequestExecutingMessageHandler
の exchange