Friday, August 27, 2010

BPM11g parallel paths

This builds on from the simple adapters lab documented at

In this simple scenario we augment the functionality from that example with the following –

- Leverage web services to Validate Customer and Check Inventory.
This can be done in parallel

Step 1 - Create demo web service from a Java class

Here's the Java class I'm using.

Expose as a web service

Step 2 - Deploy as a web service to AdminServer & test

Step 3 - Leverage Web Service in the Composite

Copy the wsdl
o E.g.

Drag & drop a Web Service in composite.xml

Step 4 - Leverage in BPM

Create variables to hold the operation responses

Add Check Inventory ServiceTask

Create validateCustomer Service task

Add parallel processing

Connect as follows –

Step 5 - Deploy & Test

Non-domestic input

View instance tracking in em console

Zoom in to ValidateCustomer

We will implement the required error handling in the next post

Thursday, August 19, 2010

Alternative approach to changing WLS external listen address on EC2 image

Thanks to my colleague Prasen -

save the following as

import os


cd ('Servers/'+bpmServer)
print "Replacing current DNS=%s with %s"%(currentDNS ,ec2DNS)
set(externalDNSNameKey, ec2DNS)
print ("EXternal DNS updated")

execute via $SOA_HOME/common/bin/

Tuesday, August 17, 2010

Deploying SOA Composite from local JDev to EC2


I have SOA Suite 11g Patchset 2 running on Amazon EC2.
JDeveloper is installed locally.

As my Cloud ip address can change (I'm not using elastic ip) I make the following entry in my Windows hosts file

I then create a connection in JDev to the SOA Suite App Server -

I then test the connection

However when deploying a composite I get the following error -

To get over this I must simply change the following entry in WLS console to reflect my Amazon ip address.

Select my Server (In my case, AdminServer)

Click on Advanced

Re-start WLS and you're up and running!