Dynamic endpoint binding in Oracle SOA Suite by Cattle Crew
June 2, 2014 Leave a comment
Why is dynamic endpoint binding needed?
Sometimes a BPEL process instance has to determine at run-time which implementation of a web service interface is to be called. We’ll show you how to achieve that using dynamic endpoint binding.
Let’s imagine the following scenario: we’re running a car rental agency called RYLC (Rent Your Legacy Car) which operates different locations. The process of renting a car is basically identical for all locations except for the determination which cars are currently available. This is depicted in the following diagram:
There are three different implementations of the GetAvailableCars service. But how can we achieve calling them dynamically at run-time using Oracle SOA Suite?
How to dynamically set the service endpoint
There are just a couple of implementation steps we need to perform to enable dynamic endpoint binding:
- create a new SOA project in JDeveloper
- add a CarRental BPEL process
- add an external reference to the GetAvailableCars service within the composite
- create a DVM file containing the URI’s by which the services for the different locations can be accessed
- set the endpointURI property on the Invoke component calling the GetAvailableCars service (value is taken from the DVM file)
Read the complete article here.
For regular information on Oracle SOA Suite become a member in the SOA & BPM Partner Community for registration please visit www.oracle.com/goto/emea/soa (OPN account required) If you need support with your account please contact the Oracle Partner Business Center.
Blog Twitter LinkedIn Facebook Wiki