Saturday, September 6, 2014

Business Exceptions in Oracle BPM

Handling Business Exceptions in Oracle BPM

I will go over a simple example where you handle Business Exceptions that are propagated to different composite.
Handling in the same composite is pretty straight forward. Use the same

I have 2 composites here. BizExceptionB & BizExceptionA.
Both the exceptions are created in BusinessCatalog of BizExceptionB process.

Snapshot of BizExceptionB Process.



The process takes a string Argument if the value is "One" it goes thru Biz Exception One case and if its "two" it goes thru Biz Exception Two case and throws the corresponding exception.

Export the Business Exceptions into a ".bob" file as shown in the screenshot.




Coming to BizExceptionA process.

It's a simple process which calls BizExceptionB process and have handlers to catch different Business Exceptions. I'm using boundary catch event for this example. You can use regular Event Sub-Process too to catch the exceptions. Screenshot below.



In this process, import the previously saved ".bob" file into BizExceptionA process, This will automatically show the Business Exceptions which were created in BizExceptionB Process under Business Catalog. Use the same ones to catch the errors in the screenshot shown above.


Note: When you import the ".bob" file into BizExceptionA process, it would show 2 Business Exceptions for each one you have. Use the one with "locked" symbol on it when in your catch branch/event. Ignore the one without lock symbol.

Shoot me in the comments, if you need any further help.

Sample project can be downloaded from here