1 Reply Latest reply: Sep 9, 2013 2:13 AM by AbhishekJ RSS

    SOA / SOAP - Direct Binding



      I have already searched and googled for plenty for online resources about the question, although they haven't really made my concepts clear.

      I am following this document - Using the Direct Binding Invocation API

      Section : 36.1 Introduction to Direct Binding

      for clarifications about Direct-Binding.


      Objective : Interaction between OSB and SOA Suite Components(BPEL, Mediator).

      Question 1: Why would I use a "direct-binding", instead of a "web/soap binding" ? What are the (dis)advantages ?


      I am quoting snippets from the aforementioned document, around which I have some doubts.


      [Document] A common way to invoke a composite is to use SOAP over HTTP.

      [Question.1]  What are other ways of invoking a composite ? I am aware of SOAP over JMS, however, never used it.

      [Document]  This is enabled by creating a SOAP service for your composite using web service binding. Direct binding enables Java clients to directly invoke composite services, bypassing the intermediate conversion to XML required with web service binding.

      [Question.2]  What I interpret this is : Composite + WebService Binding = SOAP Service of my Composite. I added a "Direct Binding" to the composite and deployed the service. The deployed concrete "directWsdl"  contained 2 auto-generated bindings for SOAP1.1 and SOAP1.2. The Endpoint URL contained "t3" URL. Now the question is, if the aim of direct binding was to avoid to conversion into XML, as with WebService binding, then, why is the deployed directWsdl contains SOAP 1.1 and SOAP1.2 bindings ?

      Any pointers to some theoretical books / resources will help !

      Thanks !

        • 1. Re: SOA / SOAP - Direct Binding

          Direct binding avoids intermediate conversion to XML because an XML Object on client side does not need to be serialized as XML, sent over HTTP(or other transports), deserialized at server and converted to XMLObject again. Client will directly invoke the server side method using RMI and passing the XML object as the input (may be via the direct binding API) this should probably save some processing. But keep in mind that it is not the only reason to use Direct Binding. See the documentation on Direct Binding to identify other benefits or use cases where direct binding may be a good idea.


          Oracle SOA Suite Transport (SOA-DIRECT)