[ACE-532] Patch Flowable BPMN End Events to Fix Missing Error Codes Created: 27/Jan/26  Updated: 29/Jan/26  Due: 27/Jan/26

Status: Done
Project: ACE
Component/s: FN
Affects Version/s: None
Fix Version/s: None

Type: Task Priority: Normal
Reporter: Zein Trabelsi Assignee: Ayed Bada
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: 0 minutes
Time Spent: 1 day, 6 hours
Original Estimate: Not Specified

Customer:
Mobinets
Planned Start:
Planned End:
Actual Start:
Date of Baselining:

 Description   

We identified an issue with the current Flowable process definitions on cloud env related to empty <errorEventDefinition/> elements in BPMN end events.
Problem:

In some deployed process definitions, end events had <errorEventDefinition/> without an errorRef.

Flowable requires an error code for error end events.

When these processes are executed, the following exception occurs:

org.flowable.common.engine.api.FlowableIllegalArgumentException: Error Code must not be null
at org.flowable.engine.delegate.BpmnError.setErrorCode(BpmnError.java:53)
at org.flowable.engine.delegate.BpmnError.<init>(BpmnError.java:48)
at org.flowable.engine.impl.bpmn.behavior.ErrorEndEventActivityBehavior.execute(ErrorEndEventActivityBehavior.java:48)

Root Cause:

Flowable engine requires all <errorEventDefinition/> elements to have a valid errorRef.

Some older BPMN files were deployed without a global error or without specifying errorRef on end events.



 Comments   
Comment by Ayed Bada [ 27/Jan/26 ]

This issue exists only on Cloud and is related to the Flowable version upgrade
-------Solution Implemented--------

1/// Developed a SOAP API method patchErrorEventDefinitions that:

-Reads the latest process definitions.

-Replaces empty <errorEventDefinition/> with <errorEventDefinition errorRef="ERR_TECHNICAL"/>.

-Redeploys the patched BPMN automatically.

2/// Intercepted all manual BPMN uploads through FN and SRD platforms to add any missing errorRef before deployment.

Only empty error end events are modified; all other BPMN logic remains untouched.

-------Impact-----

-Fixes runtime exceptions caused by missing error codes.

-Safe to deploy on staging or production before full validation.

-Prevents regression by automatically patching future manual BPMN uploads.

Generated at Wed Apr 15 11:31:42 EEST 2026 using JIRA 6.1.4#6159-sha1:44eaedef2e4a625c6c7183698b2468d4719c20dc.