Upgrading your scripts for Collibra 2024.02 compatibility
We are upgrading the Collibra workflow engine to use Jakarta EE, starting with Collibra version 2024.02. The Jakarta EE APIs (jakarta.*
) have a different package structure than Javax EE APIs (javax.*
), causing workflow scripts that use javax.*
functions to fail after the upgrade.
Recommendations
To keep all of your workflows running smoothly after the upgrade:
- You must update your workflows that use Javax EE
javax.*
functions. - You must restart running workflows that are impacted by this change if there are still tasks to be executed that use Javax EE
javax.*
functions.
Do not deploy updated workflows with Jakarta EE jakarta.*
functions before the 2024.02 release.
Custom workflows
You must update your scripts if you have workflow script tasks or scripts stored in the groovy-lib directory that use Javax EE javax.*
functions by replacing javax.*
with jakarta.*
.
The javax packages that are part of the Java SDK are not impacted by this change and they require no update. Some commonly used javax Java SDK packages are:
- javax.net
- javax.crypto
- javax.script
- javax.xml.parsers
- javax.swing
- javax.management
- javax.imageio
- javax.xml.validation
To help with this transition, we have identified a number of commonly used classes that you don't need to change starting with Collibra version 2024.02 and that are supported until Collibra version 2024.05:
- javax.ws.rs.core.UriBuilder
- javax.xml.bind.DatatypeConverter.printBase64Binary
- javax.mail.*
- javax.activation.*
- javax.servlet.http.Cookie
Running workflow instances
When you deploy a new version of a workflow and there is a running instance of the same workflow, the running workflow continues to use the old version until it completes. If there is a Javax EE javax.*
function that still needs to be executed and that is not compatible with Jakarta EE, the workflow fails.
After you have identified and deployed the workflows that require an update, check if any of the workflows that are currently running need to be restarted:
- View the running workflow instances.
- Delete the workflow instance if required.
- Restart the updated workflow.