Wednesday, October 29, 2014

#17 SOA 12c New Features - ESS --> incompatible jobs

Here is a simple example -

I have a composite with 2 sync BPEL processes -

Now, I have included WAITs for 20 seconds in each of the BPEL processes.

I now create 2 ESS job definitions, one for each job.

I define the following incompatibility.

I now create a job set that will include both these jobs.
I define it as parallel, which will trigger the incompatibility rule at runtime.

I schedule the jobset -

Here is the master process -

Now here are the 2 jobs -


When one has finished, the other begins -

Eventually, both are finished -

Tuesday, October 28, 2014

# 16 SOA Suite 12c New Features - Coherence Adapter

Here is a simple example of using the above -

I have a web service that checks the inventory status of products.

I create a BPEL process that accepts an order as input and then calls the above web service to get the
inventory status of the product.

I deploy and test.

I will now leverage Coherence to store the Inventory Status.

There will be 2 operations - Put and Get that will need to be supported.

Defining the Get adapter

Defining the Put adapter

Amend the BPEL process to leverage the Coherence adapters

Edit the Invoke activity and add the following property -

This will populate the product variable value into the property
and then pass it on the invocation to the adapter.

Now I add an If branch after this, checking if the value is in the cache.

Rename the labels

If in the cache, simply assign the cached value to the output

If not, then call the web service to get the inventory status.
Then store the result in the coherence cache.

Do not forget to edit the Invoke of the Put, to add the jca.coherence.key value

Deploy and test

The first test, and the cache is empty -

Now, I re-test with the same product -

JDev project here

SOA 12c Debugger issue --> cannot initiate debugging

Check the following - thanks to Luis Weir - he also Tweeted this - I don't like Twitter myself!
Too limiting, I am more into writing longer texts!

This issue may be caused by the debugger trying to use the ip address under which the SOA app was deployed.

1. Make sure the listen address is empty.

2. Check your ipconfig

3. Check your hosts file

this should sort out the issue.

re-start JDev

Thursday, October 16, 2014

#341 Adaptive Case Management 12c --> setting the relevance of an activity

Here is my simple case -

Here are the rules -

If an order is approved via the ApproveNano activity, then
activate the activities -
OrderCoffee and ShipNano

Now shipping the car to the customer is more important than drinking coffee, so I set the
relevance of the ShipNanoActivity to high.

So how does this appear on the UI?

Notice the exclamation mark icon before the Ship Nano Activity.
There's always time for coffee, when the work has been done.

Wednesday, October 15, 2014

#340 Adaptive Case Management 12c --> Leveraging Milestone Durations

Here is my simple example -

The Milestone - M2 Approval Completed has a duration of 5 minutes.

I see this highlighted in the Case UI

Now, I have added a rule to activate another activity, when this duration is exceeded.

Currently, my activity list is as follows -

The rule is as follows -

So what happens after 5 minutes?

The specified "ApprovalOverdueActivity" is now available.

The Milestones panel also reflects this timeout.

Naturally, I could have added the Milestone name to the rule condition as well.