Scenario:
Process A calls process B. Process A is deployed in the context of a different process application than process B. The call activity has an expression output parameter that relies on a bean defined by the EL Resolver of process A's process application.
Alternative Scenario:
The call activity has an outgoing sequence flow with conditions. A condition expression relying on a bean as above can't be resolved.
Reason:
The engine makes no context switch when performing propagation of variables from the called instance to the calling instance (SubProcessActivityBehavior#completing) or when continuing execution in the outer process (SubProcessActivityBehavior#completed; until TRANSITION_NOTIFY_LISTENER_END is invoked).
Failing test case: https://github.com/camunda/camunda-bpm-platform/commit/03f10e085e16a44e5641b74ebfffe57e44eb92f0
A related issue may exist in the CDI integration where due to the fact that no context switch is made during invocation of "completed" and "completing", bean resolution (e.g. process variables) relying on the execution context may be incorrect.
This is the controller panel for Smart Panels app
- is related to
-
CAM-4240 No context switch when submitting a signal event asynchronously
- Closed
-
CAM-4950 Conditional sequence flow leaving a cross-process-application call activity does not resolve in correct process application
- Closed
-
CAM-4951 Document expression resolution context for call activity and case/process task output parameters
- Closed