6 Replies Latest reply on Jul 28, 2020 2:57 PM by Naveent_2785

    Basic Query on OSB Reply action in synchronous service

    Naveent_2785

      Hi,

       

      In a HTTP synchronous webservice service implemented in OSB, while using the reply action it immediately stops the flow and returns back the response and stops all the next stage/activies in the pipeline flow. Whereas if the same synchronous web service if implemented in BPEL and using the reply node to return back the response but it still process the subsequent BPEL activities/scope in the flow.

       

      Why is it differently implemented in ESB/BPEL for the same kind of message exchange pattern(synchronous services)

       

      BR,

      Naveen.

        • 1. Re: Basic Query on OSB Reply action in synchronous service
          Martien van den Akker

          Hi Naveen,

           

          OSB and Oracle BPEL are significantly different products. OSB is definitely not BPEL, it's not statefull (like BPEL) but stateless.

          Everything is done in the same thread, synchronously. With one caveat, regarding service call-outs. So, if you do a reply in OSB it indeed gives back the control and finishes the service.

          Also exception handling is different. In OSB you need to finish your exception handling explicitly with a retry or reply, because otherwise it will transfer the control to the higher-level exception handler, where as in BPEL if you 're in a faulthandler-catch, the fault is considered 'handled', unless you explicitly implement a throw activity.

           

          Keep in mind that Oracle BPEL dates back to 2004, when Oracle acquired Collaxa, the original builders of BPEL PM. Since 2006 BPEL is integral part of Oracle SOASuite, the SOA Integration platform of Oracle. At the time, it was a competitor to products/vendors like Tibco and BEA Aqualogic Service bus. Oracle acquired BEA in 2008 and rebranded Aqualogic Service Bus to Oracle Service Bus. In other words the history of both products are significantly different with a very different background and architecture.

           

          Funny though: if you create a split-join component in Aqualogic/Oracle Service Bus, then it will create a flow object. This artefact is meant to be able to implement parallellism in Service Bus. You can't do that in the regular message flow in the proxy service (11g) or pipeline (12c). You may try and gues in what technology the Split-Join is implemented. And thus besides messageflows, the Service bus also has a ....-engine... (but only for synchronous service orchestration, no support for asynchronous patterns).

           

          Kind regards,
          Martien

          1 person found this helpful
          • 2. Re: Basic Query on OSB Reply action in synchronous service
            Naveent_2785

            Hi Marteen,

             

            Thanks for a very detailed reply!

             

            Even my thoughts are on being stateless/stateful as per the product design. okay, so as you said as per the design of the OSB threading model while executing the flow.

             

            Yes, I think in BPEL, we have the option to create synchronous durable process using the stateful design of the product.

             

            Thanks for info! Will try to explore split join with some hands on

             

            BR,

            Naveen.

            • 3. Re: Basic Query on OSB Reply action in synchronous service
              Martien van den Akker

              HI,

              I haven't used it in 12c yet. However I found the designer of the split/join in OSB 11g, very unfriendly to say the least. Editing Assigns was a drag, especially if you wanted to introspect detail elements from down the hierarchy in a message. So, I'd recommend to use it only for orchestrating services in parallel, but do the assignments and aggregations in the pipeline/message flow. Maybe the desginer improved (since it's JDeveloper now), but otherwise keep the flow component as sparse as possible. Only do the most necessary things in there.

               

              Kind regards,
              Martien

              1 person found this helpful
              • 5. Re: Basic Query on OSB Reply action in synchronous service
                Martien van den Akker

                Hi Naveent,

                 

                Have I answered your question? I would appreciate if you mark my answers as helpfull and/or answering your question.

                It helps others to see that this thread is answered and what helped you.

                 

                Kind regards,
                Martien

                • 6. Re: Basic Query on OSB Reply action in synchronous service
                  Naveent_2785

                  Hi Marteen,

                   

                  Yes got the answer, Thanks.  I have marked it as helpful.

                   

                  BR,

                  Naveen.