Class AbstractWebServiceOutboundGateway
java.lang.Object
org.springframework.integration.context.IntegrationObjectSupport
org.springframework.integration.handler.MessageHandlerSupport
org.springframework.integration.handler.AbstractMessageHandler
org.springframework.integration.handler.AbstractMessageProducingHandler
org.springframework.integration.handler.AbstractReplyProducingMessageHandler
org.springframework.integration.ws.AbstractWebServiceOutboundGateway
- All Implemented Interfaces:
org.reactivestreams.Subscriber<org.springframework.messaging.Message<?>>
,org.springframework.beans.factory.Aware
,org.springframework.beans.factory.BeanClassLoaderAware
,org.springframework.beans.factory.BeanFactoryAware
,org.springframework.beans.factory.BeanNameAware
,org.springframework.beans.factory.DisposableBean
,org.springframework.beans.factory.InitializingBean
,org.springframework.context.ApplicationContextAware
,org.springframework.core.Ordered
,org.springframework.integration.context.ExpressionCapable
,org.springframework.integration.context.Orderable
,org.springframework.integration.core.MessageProducer
,org.springframework.integration.handler.HeaderPropagationAware
,org.springframework.integration.IntegrationPattern
,org.springframework.integration.support.context.NamedComponent
,org.springframework.integration.support.management.IntegrationManagement
,org.springframework.integration.support.management.TrackableComponent
,org.springframework.messaging.MessageHandler
,reactor.core.CoreSubscriber<org.springframework.messaging.Message<?>>
- Direct Known Subclasses:
MarshallingWebServiceOutboundGateway
,SimpleWebServiceOutboundGateway
public abstract class AbstractWebServiceOutboundGateway
extends org.springframework.integration.handler.AbstractReplyProducingMessageHandler
Base class for outbound Web Service-invoking Messaging Gateways.
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected class
AbstractWebServiceOutboundGateway.RequestMessageCallback
protected class
AbstractWebServiceOutboundGateway.ResponseMessageExtractor
-
Field Summary
Fields Modifier and Type Field Description protected org.springframework.web.util.DefaultUriBuilderFactory
uriFactory
Fields inherited from class org.springframework.integration.handler.AbstractMessageProducingHandler
messagingTemplate
Fields inherited from class org.springframework.integration.context.IntegrationObjectSupport
EXPRESSION_PARSER, logger
-
Constructor Summary
Constructors Constructor Description AbstractWebServiceOutboundGateway(java.lang.String uri, org.springframework.ws.WebServiceMessageFactory messageFactory)
AbstractWebServiceOutboundGateway(org.springframework.ws.client.support.destination.DestinationProvider destinationProvider, org.springframework.ws.WebServiceMessageFactory messageFactory)
-
Method Summary
Modifier and Type Method Description protected abstract java.lang.Object
doHandle(java.lang.String theUri, org.springframework.messaging.Message<?> requestMessage, org.springframework.ws.client.core.WebServiceMessageCallback reqCallback)
protected void
doInit()
protected void
doSetWebServiceTemplate(org.springframework.ws.client.core.WebServiceTemplate template)
protected org.springframework.ws.client.core.WebServiceTemplate
getWebServiceTemplate()
java.lang.Object
handleRequestMessage(org.springframework.messaging.Message<?> requestMessage)
void
setEncodeUri(boolean encodeUri)
Deprecated.since 5.3 in favor ofsetEncodingMode(org.springframework.web.util.DefaultUriBuilderFactory.EncodingMode)
void
setEncodingMode(org.springframework.web.util.DefaultUriBuilderFactory.EncodingMode encodingMode)
Set the encoding mode to use.void
setFaultMessageResolver(org.springframework.ws.client.core.FaultMessageResolver faultMessageResolver)
void
setHeaderMapper(SoapHeaderMapper headerMapper)
void
setIgnoreEmptyResponses(boolean ignoreEmptyResponses)
Specify whether empty String response payloads should be ignored.void
setInterceptors(org.springframework.ws.client.support.interceptor.ClientInterceptor... interceptors)
void
setMessageFactory(org.springframework.ws.WebServiceMessageFactory messageFactory)
void
setMessageSender(org.springframework.ws.transport.WebServiceMessageSender messageSender)
Deprecated.in favor ofsetMessageSenders(WebServiceMessageSender...)
void
setMessageSenders(org.springframework.ws.transport.WebServiceMessageSender... messageSenders)
void
setReplyChannel(org.springframework.messaging.MessageChannel replyChannel)
void
setRequestCallback(org.springframework.ws.client.core.WebServiceMessageCallback requestCallback)
void
setUriVariableExpressions(java.util.Map<java.lang.String,org.springframework.expression.Expression> uriVariableExpressions)
Set the Map of URI variable expressions to evaluate against the outbound message when replacing the variable placeholders in a URI template.void
setWebServiceTemplate(org.springframework.ws.client.core.WebServiceTemplate webServiceTemplate)
Methods inherited from class org.springframework.integration.handler.AbstractReplyProducingMessageHandler
doInvokeAdvisedRequestHandler, getBeanClassLoader, getIntegrationPatternType, getRequiresReply, handleMessageInternal, hasAdviceChain, onInit, setAdviceChain, setBeanClassLoader, setRequiresReply
Methods inherited from class org.springframework.integration.handler.AbstractMessageProducingHandler
addNotPropagatedHeaders, createOutputMessage, getNotPropagatedHeaders, getOutputChannel, isAsync, messageBuilderForReply, produceOutput, resolveErrorChannel, sendErrorMessage, sendOutput, sendOutputs, setAsync, setNotPropagatedHeaders, setOutputChannel, setOutputChannelName, setSendTimeout, shouldCopyRequestHeaders, shouldSplitOutput, updateNotPropagatedHeaders
Methods inherited from class org.springframework.integration.handler.AbstractMessageHandler
handleMessage, onComplete, onError, onNext, onSubscribe
Methods inherited from class org.springframework.integration.handler.MessageHandlerSupport
buildSendTimer, destroy, getComponentType, getManagedName, getManagedType, getMetricsCaptor, getOrder, getOverrides, isLoggingEnabled, registerMetricsCaptor, sendTimer, setLoggingEnabled, setManagedName, setManagedType, setOrder, setShouldTrack, shouldTrack
Methods inherited from class org.springframework.integration.context.IntegrationObjectSupport
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
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Field Details
-
uriFactory
protected final org.springframework.web.util.DefaultUriBuilderFactory uriFactory
-
-
Constructor Details
-
AbstractWebServiceOutboundGateway
public AbstractWebServiceOutboundGateway(java.lang.String uri, org.springframework.ws.WebServiceMessageFactory messageFactory) -
AbstractWebServiceOutboundGateway
public AbstractWebServiceOutboundGateway(org.springframework.ws.client.support.destination.DestinationProvider destinationProvider, org.springframework.ws.WebServiceMessageFactory messageFactory)
-
-
Method Details
-
setHeaderMapper
-
setUriVariableExpressions
public void setUriVariableExpressions(java.util.Map<java.lang.String,org.springframework.expression.Expression> uriVariableExpressions)Set the Map of URI variable expressions to evaluate against the outbound message when replacing the variable placeholders in a URI template.- Parameters:
uriVariableExpressions
- The URI variable expressions.
-
setEncodeUri
@Deprecated public void setEncodeUri(boolean encodeUri)Deprecated.since 5.3 in favor ofsetEncodingMode(org.springframework.web.util.DefaultUriBuilderFactory.EncodingMode)
Specify whether the URI should be encoded after anyuriVariables
are expanded and before sending the request. The default value istrue
.- Parameters:
encodeUri
- true if the URI should be encoded.- Since:
- 4.1
- See Also:
UriComponentsBuilder
-
setEncodingMode
public void setEncodingMode(org.springframework.web.util.DefaultUriBuilderFactory.EncodingMode encodingMode)Set the encoding mode to use. By default this is set toDefaultUriBuilderFactory.EncodingMode.TEMPLATE_AND_VALUES
.- Parameters:
encodingMode
- the mode to use for uri encoding- Since:
- 5.3
-
setReplyChannel
public void setReplyChannel(org.springframework.messaging.MessageChannel replyChannel) -
setIgnoreEmptyResponses
public void setIgnoreEmptyResponses(boolean ignoreEmptyResponses)Specify whether empty String response payloads should be ignored. The default istrue
. Set this tofalse
if you want to send empty String responses in reply Messages.- Parameters:
ignoreEmptyResponses
- true if empty responses should be ignored.
-
setWebServiceTemplate
public void setWebServiceTemplate(org.springframework.ws.client.core.WebServiceTemplate webServiceTemplate) -
doSetWebServiceTemplate
protected final void doSetWebServiceTemplate(org.springframework.ws.client.core.WebServiceTemplate template) -
setMessageFactory
public void setMessageFactory(org.springframework.ws.WebServiceMessageFactory messageFactory) -
setRequestCallback
public void setRequestCallback(org.springframework.ws.client.core.WebServiceMessageCallback requestCallback) -
setFaultMessageResolver
public void setFaultMessageResolver(org.springframework.ws.client.core.FaultMessageResolver faultMessageResolver) -
setMessageSender
@Deprecated public void setMessageSender(org.springframework.ws.transport.WebServiceMessageSender messageSender)Deprecated.in favor ofsetMessageSenders(WebServiceMessageSender...)
Specify theWebServiceMessageSender
to use.- Parameters:
messageSender
- the sender.
-
setMessageSenders
public void setMessageSenders(org.springframework.ws.transport.WebServiceMessageSender... messageSenders) -
setInterceptors
public void setInterceptors(org.springframework.ws.client.support.interceptor.ClientInterceptor... interceptors) -
doInit
protected void doInit()- Overrides:
doInit
in classorg.springframework.integration.handler.AbstractReplyProducingMessageHandler
-
getWebServiceTemplate
protected org.springframework.ws.client.core.WebServiceTemplate getWebServiceTemplate() -
handleRequestMessage
public final java.lang.Object handleRequestMessage(org.springframework.messaging.Message<?> requestMessage)- Specified by:
handleRequestMessage
in classorg.springframework.integration.handler.AbstractReplyProducingMessageHandler
-
doHandle
protected abstract java.lang.Object doHandle(java.lang.String theUri, org.springframework.messaging.Message<?> requestMessage, org.springframework.ws.client.core.WebServiceMessageCallback reqCallback)
-