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  

    Nested classes/interfaces inherited from class org.springframework.integration.handler.AbstractReplyProducingMessageHandler

    org.springframework.integration.handler.AbstractReplyProducingMessageHandler.RequestHandler

    Nested classes/interfaces inherited from interface org.springframework.integration.support.management.IntegrationManagement

    org.springframework.integration.support.management.IntegrationManagement.ManagementOverrides
  • 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

    Fields inherited from interface org.springframework.integration.support.management.IntegrationManagement

    METER_PREFIX, RECEIVE_COUNTER_NAME, SEND_TIMER_NAME

    Fields inherited from interface org.springframework.core.Ordered

    HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
  • 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)
    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)
    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

    Methods inherited from interface reactor.core.CoreSubscriber

    currentContext

    Methods inherited from interface org.springframework.integration.support.management.IntegrationManagement

    getThisAs

    Methods inherited from interface org.springframework.integration.support.context.NamedComponent

    getBeanName, getComponentName
  • 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

      public void setHeaderMapper​(SoapHeaderMapper headerMapper)
    • 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)
      Specify whether the URI should be encoded after any uriVariables are expanded and before sending the request. The default value is true.
      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 to DefaultUriBuilderFactory.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 is true. Set this to false 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)
      Specify the WebServiceMessageSender 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 class org.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 class org.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)