Release notes
|
The 2026.1 version is in development. |
Notable changes
BDM REST API response format standardization
Starting from this version, the response format for BDM queries via REST API has been standardized to follow REST conventions:
-
Scalar queries (COUNT, AVG, MAX, MIN, SUM): Now return
{"value": n}instead of[n] -
Single entity queries: Now return the object directly
{…}instead of wrapping it in an array[{…}] -
List queries: Unchanged, still return arrays
[{…}, {…}]
This change affects REST API consumers (JavaScript clients, UI Designer pages, external applications). Server-side Groovy code using DAO methods is not affected.
To maintain backward compatibility, you can disable the new format by setting:
bonita.runtime.business-data.serialization.standard-shape.enabled=false
|
If you are updating from a previous version of Bonita, backward compatibility is maintained for you by disabling automatically this new property. You are free to activate it when you code is compatible by modifying file |
See BDM Query Response Formats for detailed migration guidance.
Rest API refactoring
Many Rest APIs have been refactored to better prepare evolutions in the future. (Technically, we moved the implementation from unmaintained Restlet to Spring MVC).
This concerns the following endpoints:
-
/API/accessControl/bdm -
/API/bdm/businessDataReference-
⚠️ this API now returns
HTTP 400instead ofHTTP 500:-
when
caseIdfilter is not provided, or filterfcompletely absent -
when pagination parameter
pis not provided -
when pagination parameter
cis not provided
-
-
-
/API/bdm/businessDataReference/{caseId}/{dataName} -
/API/bpm/activityReplay/{activityInstanceId} -
/API/bpm/activityVariable/{activityId}/{dataName}-
⚠️ this API now returns
HTTP 404whenactivityIdordataNameis not found (instead ofHTTP 500)
-
-
/API/bpm/archivedActivityVariable/{activityId}/{variableName}-
⚠️ this API now returns
HTTP 404whenactivityIdorvariableNameis not found (instead ofHTTP 500)
-
-
/API/bpm/archivedCase/{archivedCaseId}/context -
/API/bpm/archivedCaseVariable?f=case_id=12005&p=0&c=10-
⚠️ this API now returns
HTTP 400instead ofHTTP 500:-
when
case_idfilter is not provided, or filterfcompletely absent -
when pagination parameter
pis not provided -
when pagination parameter
cis not provided
-
-
-
/API/bpm/archivedCaseVariable/{caseId}/{variableName}-
⚠️ this API now returns
HTTP 404whencaseIdorvariableNameis not found (instead ofHTTP 500)
-
-
/API/bpm/archivedUserTask/{archivedTaskId}/context -
/API/bpm/case/{caseId}/context -
/API/bpm/diagram/{processId} -
/API/bpm/message -
/API/bpm/process/{processDefinitionId}/contract -
/API/bpm/process/{processDefinitionId}/design -
/API/bpm/process/{processDefinitionId}/expression/{expressionId} -
/API/bpm/process/{processDefinitionId}/instantiation -
/API/bpm/signal -
/API/bpm/timerEventTrigger -
/API/bpm/timerEventTrigger/{id} -
/API/bpm/userTask/{taskId}/context -
/API/bpm/userTask/{taskId}/contract -
/API/bpm/userTask/{taskId}/execution -
/API/form/mapping/{id} -
/API/platform/license -
/API/system/i18ntranslation -
/API/tenant/bdm
The behaviour remains unchanged, even if some HTTP headers may be slightly different.
Deprecations and removals
Configuration changes
Ehcache upgraded from 2.x to 3.11
Bonita Runtime internal caching system has been upgraded from Ehcache 2.x to Ehcache 3.11 to benefit from improved performance, better memory management, and continued vendor support.
Impact on configuration:
The migration process automatically:
-
Removes the deprecated
cache-config.xmlfile (cache configuration is now programmatic in Java) -
Removes 4 obsolete Ehcache 2 properties from configuration files:
-
inMemoryOnly,maxElementsOnDisk -
copyOnRead,copyOnWrite
-
-
Adds new
offHeapSizeMB=0property to all cache configurations (defaults to on-heap caching)
What you need to know:
-
If you customized cache configuration in
bonita-platform-community-custom.properties,bonita-tenant-community-custom.properties, or cluster configuration files, these obsolete properties will be automatically removed during platform update -
The new Ehcache 3 configuration uses different property names and is managed programmatically - contact Bonitasoft Support if you need to tune cache behavior
-
Most Ehcache 3 properties (like
maxElementsInMemory,eternal,timeToLiveSeconds) remain compatible and will be preserved -
Off-heap caching is disabled by default (
offHeapSizeMB=0) but can be enabled for performance optimization on large-scale deployments
Affected configuration files:
-
Community edition:
bonita-platform-community-custom.properties,bonita-tenant-community-custom.properties -
Subscription edition (cluster):
bonita-platform-sp-cluster-custom.properties,bonita-tenant-sp-cluster-custom.properties
For advanced cache tuning after migration, refer to the Performance tuning documentation.