Upgrading from 3.0 to 3.1
Overview
The upgrade to IBM Financial Services Workbench 3.1-Preview is supported from the earlier version 3.0.
To upgrade IBM Financial Services Workbench from the previous version 3.0 to 3.1-Preview, just follow the steps in the Upgrade steps section below.
If upgrading from a version prior to 3.0, please first perform a complete upgrade to the previous version 3.0 including installation of 3.0, and then continue with the steps in the Upgrade steps section.
Breaking changes
IBM Financial Services Workbench 3.1-Preview brings also some technical alignments that may lead to existing projects not working any longer. This section will give you an overview of the breaking changes and how to solve issues related to them.
TypeScript Low-Code projects
Integer, Decimal and Date used to be string type. Now Integer has the native Javascript (BigInt) type, Decimal now has BigNumber type from bignumber.js and Date now has the native Javascript Date type.
const myBigNumber = new BigNumber(19);
const myBigInt = BigInt(4);
const sumOfBigNumber = myBigNumber.plus(myBigNumber);
const sumOfBigInt = myBigInt + myBigInt;
// notes the casting of BigInt to number with Number()
const sumBigNumberWithBigInt = myBigNumber.plus(Number(myBigInt));
Integration namespace will be accessed through this.apis like the following.
// integration namespace operation call.
const getCustomerResponse = (await this.apis.Customerapi.CustomerApi.getCustomer(prop1, prop2, prop3)).data;
// previous usage to call integration namespace operation.
const getCustomerResponse = await this.apis.customerAPI.getCustomer({customer_ref: this.input.customerID}).body;
Migrate Java low-code projects
All existing low-code projects with implementation language Java need to be updated in the Git repository due to a known issue. There is only the root level pom.xml file that has to be changed.
Search for the parent attribute and change it according to the following snippet:
<parent>
<groupId>de.knowis.cp.sdk</groupId>
<artifactId>cp-framework-managed-sdk-parent</artifactId>
<version>4.0.7</version>
<relativePath>
./.framework/repo/de/knowis/cp/sdk/cp-framework-managed-sdk-parent/4.0.7/cp-framework-managed-sdk-parent-4.0.7.pom
</relativePath>
</parent>
Migrate Integration namespace
User's using IBM Financial Services Workbench 3.0 and prior had the functionality to have more than one API dependency in an integration namespace. From IBM Financial Services Workbench 3.1, a user will only be able to have one API dependency for an integration namespace. For every new API dependency, a new Integration namespace has to be created.
Migrate Steps
It is suggested to have one API dependency for an integration namespace from IBM Financial Services Workbench 3.1 onwards. Hence, user's having Integration namespace with multiple API dependencies will be seeing the first API Dependency for the integration namespace in the General tab and a warning message on the right side of the page (above the Integration namespace details section).
The following steps are suggested to migrate the old API dependencies into individual integration namespaces:
The user can click on the warning message which will open a sidebar card API Dependencies with the list of all existing API dependencies.
A table listing all the API dependencies will be shown with three-dots-menu for each of the API dependencies.
Use the three-dots-menu on the right side of a table row and click on Info. This will open a detailed View of the selected API dependency.
In the Info view download the API specification file by clicking on the file name. Make sure to also copy the DEV binding if one exists in order to use it when recreating the namespace.
Go ahead and create a new integration namespace.
Create an API Dependency using the downloaded API specification file and if it exists the DEV binding.
Repeat step 3 to 6 for all the API dependencies.