There are many situations when building composite SOA services where we need to invoke several backend services in parallel for performance reasons. Your first thought may be to use a flow activity in your BPEL process and this is correct, although to have the services truly invoked in parallel there are a few more steps that must be done. A BPEL process is executed using a single thread, even when a flow is reached. Each branch of the flow will then be executed sequentially. The solution to this is to enable the nonBlockingInvoke property on your partner links.
Oracle Data Integrator (ODI) is Oracle's data integration platform engineered to provide fast and easy data transformation and data integration processes, through E-LT (Extract - Load Transform) mechanism, between different technologies. For example, using ODI's transformation mechanism I can create daily snapshots of my data residing in an Oracle DB and store these snapshots in a XML format. These XML snapshot files can serve as XML payloads for an external web-service to consume this data.
In SOA Suite 11g, Enterprise Manager provides a wide variety of monitoring and management functions to an administrator. At most customers I have worked at this level of control is not given to all users, especially in QA/UAT or Production environments. Fortunately, Enterprise Manager provides functionality to provide different levels of access to different users and groups. At a current customer we need to provide a group of users and developers access to view service status and health, composite instances, and audit trails.
As an Avio consultant, I work with many different clients and with many different technologies. During my current engagement, it dawned on me that something as simple as initializing a variable can be very different across the many technologies and programming languages that my coworkers and I encounter. In this particular case, I wanted to perform a simple POC (Proof of Concept) in Oracle BPEL 11g using a BPEL 2.0 service. In doing so, I came across the need to initialize a BPEL variable with an XML literal.
During a recent project at a customer I was designing and building several stateful and possibly long running BPEL processes that all interacted with each other in SOA Suite 11g. These processes would be required to read and write data to many different DB tables as well as integrate into 6+ web services and 1-2 MQ services. We decided that separating out the DB data access and service integration into different composites from the processes would provide several benefits such as:
On Thursday, July 8th, Avio and Catalina Marketing presented a webinar to discuss how Catalina leveraged an enterprise wide Oracle BPM strategy to help them innovate and provide more efficient services and solutions to their customers and partners. For those of you who were unable to participate in the live webinar, the replay is now available:
Enterprise-wide BPM: Bridging All People, All Processes and All Systems