Rational Developer for System z

A service flow cannot call itself (recursive call)

A service flow cannot call itself, either directly or indirectly.

In general, the service flow project tools do not allow you to create a recursive invocation of a flow, that is a flow invoking itself either directly or through intermediate calls.

However, the service flow project tools currently do not detect the following type of recursion:
  1. You generate a service flow (S1) from a service flow project.
  2. The service flow invokes another service flow (S2).
  3. The invoked service flow S2 in turn invokes the original service flow S1.
In this case:
  1. The flow editor does not detect the recursion when you create it and does not display an error message.
  2. You can successfully generate runtime code for the CICS® Service Flow Runtime and deploy the service flows S1 and S2.
  3. When you run the service flow S1 the invocation to the second service flow S2 is successful.
  4. However, the recursive invocation (S2 invoking S1) fails.


Feedback