Release notes

Bonita 2023.1 release note

Bonita project packaged as a self-contained application

With Bonita 2023.1 comes a new recommendation on how to deploy your Bonita applications. Each development team using Bonita platform has several options. Here are the options proposed by Bonitasoft:

  1. Create a dedicated project that is completely independent from the existing Bonita projects (i.e. the generated application will be deployed independently from the existing ones)

  2. Integrate it into an existing project, so that a single application will be generated and deployed (backward compatible way of doing things)

The first choice is already possible today and the second one will only be possible in future Bonita versions.

For those who want to try out deploying a Bonita project as a self-contained application, we have developped an experimental packaging tool. The outcome will be an appplication packaged either in Tomcat Bundle or a docker image, you choose. For everyone that wants to get a glance at the future, the tool is available here Bonita Application Packager.

The update process of the self-contained application packaged with the experimental tool will not be covered with Update Tool, hence we advice deployement in non-production environments.

New product values

Bonita Runtime

Technical version change to 8.x.y

Bonita 2023.1 introduces a new multi-runtime architecture. This change comes with a new way to handle multi-tenants use cases and thus the removal of the multi-tenancy as it is currently known. Based on the semantic versioning management standards, these changes require a technical version change.

User account provisioning with Single Sign-on

For Subscription editions only.

Starting with Bonita 2021.1, creating user accounts on the fly at user authentication through SSO (Single Sign-on) was possible with configuration in Bonita Runtime. The user accounts were created with a username attribute, a default role and group - created beforehand in Bonita Runtime database.

Additional capabilities have been added in 2023.1 for single sign-on with SAML or OIDC:

  • possibility to integrate additionnal information from the Identity Provider of the SSO at user account creation (like first name, last name, email, etc…​)

  • user groups can be retrieved from the SAML response or OIDC ID token and created automatically in Bonita Runtime database at user account creation

More details are available in the dedicated documentation page User Account Provisioning.

Development suite changes

Bonita project layout

Bonita projects layout has been changed to take advantage of Maven multi-module project perks.

First project component that will benefit from Maven multi-module project is the Business Data Model. We decided to align the way the Business Data Model is handled in Bonita with the standard dependency handling practices by using Maven submodules. Submodules, or subprojects, are regular Maven projects that inherit from the parent POM.

With the chosen solution, the users will have the possibility to publish and consume the Business Data Model java dependencies independently. The project will pull the required dependencies from a specified repository - Maven Central or Bonita Artifact Repository - to generate the BDM java sources. Here are details on how to configure access to Bonita Artifact Repository(Subscription only) and Maven Central.

Business Data Model content check at build or deploy will still be developer’s responsibility along with handling data-deletion risks at build or deploy. For this Bonita version, reusing the generated artifacts in another Bonita project is not supported with refactoring capabilities. All changes will have to be handled manually by developers.

Bonita UI Designer

Develop digitally accessible applications

The following improvements have been made so that digitally accessible applications could be developed natively with Bonita UI Designer with less custom code:

  • An attribute lang is now available and based on the BOS_locale cookies at page initialization will automatically get filled without developer’s or end-user’s action.

  • Table and data-table widget have a new caption property available for adding a title

  • The default widgets in the palette that contain a html input tag have now an associated label, which will facilitate the use of computer tools (screen readers for example)

  • To be more accessible for speech synthesizers, screen readers or some other tools, the internal html template of checklist and radio buttons widget has been updated.

The changes will automatically be available when changing a page in Bonita UI Designer <2023.1> developed with a previous Bonita UI Designer version. Custom styling could be impacted so take this fact into account in your development estimates.

Manual web resource declaration in UID page metadata

In addition to the automatic permission mapping done at a Custom page deployment, it is now possible to declare web resources manually in a page/fragment/widget metadata. Less time spent now on post deployment configuration requests by DevOps team managing Bonita instances

It is the good practice we are introducing regarding web resource’s for a page declaration.

Custom widget editor

To add the web resource section in custom widget editor, we should reorganize the layout of this page. We hope it will more usable.

You can now use the search (ctrl + f) or search and replace (ctrl + h) keybinding in the code editor (custom-widget, assets content and edit).

Security fixes for all the application pages developped using UI Designer

During the last year we explored all possible options for providing a supported AngularJS version. In the end we decided to handle the need in-house. The first step of the long term project we initiated is correcting all critical and high CVEs in the AngularJS version used to run our Bonita application pages developped using UI Designer. For that, we made a fork of the AngularJS project and adapted the fixes to the version that is used.

Want to hear more? Check this page.

Version update for default Bonita application pages developped in AngularJS

An update to the latest version of AngularJS (1.8.3) was done on the following pages provided by Bonita:

  • User task list

  • Admin application list

  • Admin application details

  • BDM page (both Admin and Super-Admin applications)

  • Admin user details

  • Admin process details

  • Admin license

  • Admin monitoring

Feature deprecations and removals

Custom Rest API Extension and BDM dependencies

When updating a Bonita project in Bonita Studio 2023.1 version, BDM dependencies will be directed to use the new the *-bdm-model artifact introduced with the Bonita project layout changes. Meaning that bdm-client and bdm-dao dependencies will automatically be replaced with project’s bdm-model dependency.

Additionnally, the dependency containing the client DAO implementation will be removed from the dependencies list. It can affect the code directly referencing the *DAOImpl classes. To avoid this situation, change the code to use the DAO interfaces present in the bdm-model dependency. The changes can be done before or after updating to the 2023.1 version without breaking the project.

Reminder : in case *DAOImpl class was instantiated in the code, APIClient#getDAO factory method has to be used instead.

For example, for a given BusinessObject Customer
// Direct instantiation
CustomerDAOImpl dao = new CustomerDAOImpl(context.getApiSession());

// Replace it with APIClient factory
CustomerDAO dao = context.getApiClient().getDAO(CustomerDAO.class);

Multi-tenancy removal

For Subscription editions only.

Deprecated multi-tenancy has been removed.

To cover the multi-tenancy use cases in the best technical way, Bonitasoft is proposing a new architecture solution. For customers running a Bonita multi-tenancy platform, the technical path from multi-tenancy proposed by Bonitasoft is multi-runtime. This choice will require to split the current multi-tenant platform into several runtimes, each one with their own Bonita engine database.

As this path can be challenging for customers using multi-tenancy, Bonitasoft developed a conversion tool, available for download on Bonitasoft Customer Portal. We strongly suggest our customers to take the time and use the tool in a pre-production environment before using it on a production environment.

Multi-tenancy to multi-runtime conversion tool can be executed on Bonita Runtimes starting with Bonita 7.11 and up to Bonita 7.15.

In case you are using a Bonita non-supported version, perform the update to a Bonita supported version before the conversion to multi-runtime.

Reminder : For commercial and support questions, please refer to your Customer Success referent.