Been reading similar posts on the forum here and gave em all a try but looks like I am still missing something. I have spent a lot of time on this on my own and now I think I need some help trying to figure out this problem.
Here is the setup:
Flow Service A:
Try Block: Calls Flow Service B
Catch Block: Handle Error. (This is a custom java service I wrote on the same lines of getLastError. I did this because I wanted to extend the behavior of getLastError.)
Flow Service B: (No Try/Catch in this one)
Call Service C
Do some transformation
Flow Service C:
Try Block: Does a bunch of transformations
Catch Block: Handle Error (same custom java service instead of getLastError)
Exit and Signal Failure.
This setup works perfectly. When there is an error in Service C, the error bubbles up to Service A’s catch block and by inspecting the pipeline object in the lastError doc, I am able to get the error that happened in service C and do whatever I need to do there.
What am I trying to do?:
I want to combine the Handle Error service and the Exit and Signal Failure steps into one Java service and have a service like Handle Error and re-throw. When I throw a ServiceException from within the Java Service, the control is not being handled to the Catch Block of Flow Service A.
Attached is the code to my custom getLastError. Sorry for the long post, wanted to be as clear as possible.
Thanks in adavance,
getLastError_Custom.txt (2.2 KB)