Migration Changes

No.ChangeReasonVersionBackward Compatibility
1Package names are changed from 'com.polaris.canvas' to 'com.intellectdesign.canvas'.Organisational change16.1No
2The 'loginUser' and 'logoutUser' methods are changed in the SessionManager class.Simplified API16.1No
3New Channel Identifiers are included (2 for Mobile-Hybrid, 4 for Tablet-Hybrid, 5 for Tablet-Web).New channel identifiers introduced16.1No
4Date and amount format are changed.
16.1No
5Audit, alert, entitlement, and event APIs data signature are changed.Type definition will be generic

6In the action class, the parameters of executeHostRequest() are changed.Method has been enriched16.1No
7The signature of processRequest() method in the RequestHandler class is changed.The method's return type, input parameter type and exception are changed.16.1No
8The signature of process() method in the RequestHandler class is changed.Instead of using Vector as the basis of transfer, a new VO structure is created.16.1Yes
9The mandatory property 'EHCACHE_CONFIG_FILE' is added in cache config property file.For providing the path to the EH Cache configuration file name.16.1No
10

The following files are deleted:

  • AccountListViewConstants.java
  • AuditLogValue.java
  • CBXSSOConstants.java
  • IAuditLogController.java
  • PwdUtilErrorConstant.java
  • TIConstats.java
  • TXNConstants.java
These Java files are not used in Canvas Technology platform.16.1No
11All Canvas Technology framework events’ IDs are changed to negative.For differentiating the Canvas Technology framework events and avoiding accidental override.16.1No
12The AlertConstants class is moved to a different package.Reorganisation in the Alerts module in Canvas Technology framework.16.2No
13Theme configuration changes.Theme configuration will follow an organised structure with the inclusion
of bidirectional (Right-to-Left and Left-to-Right) text configuration.
16.3No
14Distinction between applying reset() API and ClearValues() API.Previously both the APIs cleared the field values. In CT 16.4, reset() API will set the default values.16.4No
15The cbxbeforeload event is deprecated. Implementation teams are suggested to use EXTRA_PARAMS_HDLR instead.The new events are common for grids and template views.16.4No
16The CWEC.BBUTCLICK event is changed to CWEC.BBAR_BUTTON_CLICK.Standardised naming convention16.4No
17The single click event is deprecated and changed to row click event.
16.4No
18The IAdditionalDataSupport interface is changed.Type definition will be generic.16.4No
19The value of the SELECTION_TYPE column is changed.Standardised naming convention.17.1No
20ExtJS specific code is removed.ExtJS is not supported.17.1No
21Setvalue for Amount field will accept raw value only and not formatted value.
17.1No
22The setEnableFields API cannot be used for non editable fields.
17.1No
23

The grid access mechanism is changed:

// Instead of this.mvh.getGridCmp(), use the following:

var widObj = ct.widgets.getWidget('WIDGET_ID')

17.1No
24Form container action buttons will be loaded based on user entitlements
17.1No
25The 'retrieveUserDetails' method is added in the IAuthenticationServiceProvider interface.
17.1
26

The following property is added in the MyImplementation.properties file:

CT_INFO_REPORT_BUNDLE = inforreportconfig



27

The following properties are added in the loggerconfig.properties file:

LOGGER_CLASS = com.intellectdesign.canvas.logging.log4j1x.CanvasSLF4jLoggerImpl
log.level.reqmodel = debug
HYBRID_POLICY_PROV_CLASS = NONE



28

The following property is added in the cacheconfig.properties file:

CACHE_PROXY_MODE = local



29

The following properties are added in the databaseconfig.properties file:

MYBATIS_DATASOURCE = <MYBATIS datasource> # For example, java:/ModelHouse
MYBATIS_CONFIG_XML = <MYBATIS config XML> # For example, com/intellectdesign/modelhouse/database/mybatis/config.xml



30

The following property is added in the exportconfig.properties file:

REQ_MODELER_VALIDATION_PATH = /Temp/ReqModeler_validations



31

The following property is added in the multilingualconfig.properties file:

CT_RBL_SOURCE_CLASS = com.intellectdesign.canvas.config.multilingual.resources.CanvasDefaultResourceBundleSource



32

The following property is added in the webutilconfig.properties file:

CT_ENABLE_DEEPLINKING = Y



33

The following properties are added in the implclassconfig.properties file:

EVENT_INTERCEPTOR_CLASS = com.intellectdesign.modelhouse.dataSupport.SampleCanvasEventInterceptor
WS_INVOKER_CLASS = com.intellectdesign.canvas.hal.HALWebServiceInvoker
LOGIN_HANDLER_INVOKER_CLASS = com.intellectdesign.canvas.login.handlers.LocalLoginHandlerInvoker



34

The following properties are added in the componentspreferences.properties file:

ENABLE_KEYBOARD_NAVIGATION = N
LOAD_COMPILED_TEMPLATE = N



35

The following properties are added in the systempreferences.properties file:

DEFAULT_AMOUNT_FORMAT = <default amount format> # For example, USA
FORM_CONTAINER_FULLSCREEN_IND = N
RYC_ENABLED_IND = Y
WS_MENU_RENDER_TYPE = RIBBON
PREFIX_ENABLE = N



36New properties file added - inforreportconfig.properties.


37

The following properties are added in the securityconfig.properties file:

HYBRID_POLICY_PROV_CLASS = NONE
LOAD_KEYS_FROM_CERTIFICATE = N
KEYSTORE_PATH = <keystore path> # For example, modelhouse.keystore
KEYSTORE_ALIAS = <keystore alias> # For example, modelhouse
KEYSTORE_PASSWORD = <keystore password> # For example, 001a28f43ecb3e394276
ALIAS_PASSWORD = <alias password> # For example, 9b01657cf3f548e44f65



38Removed the StartTaskServlet entry from the web.xml file.


39New files added for ContextLister (update the path of the cssconfig file), SessionFilter, EventInterceptor, and SessionInterceptor. Ensure that the EventInterceptor is mapped in the implclassconfig.properties file.


40If file compression throws syntax errors, fix those errors. For example, regular expressions present as strings are treated as syntax error by the compressor. Refer the example given in the code snippet in Registering Custom Validation Types in Canvas.


41

If the following error occurs - "Invalid login Id. Entitlement provider reports that this login id does not exist.", ensure that the STATUS column in the OD_USERS_MB table is set to 'A' for the logged-in user. The 'LOGIN_CHECK_USER_EXISTENCE_SELECT_NICKNAME_MASTER' query expects the status in OD_USERS_MB to be 'A'.




42

After entering login credentials, the message user profile is registered successfully is displayed instead of logging in the user. Exception in the log, cannot update virtual column while executing UPDATE_USER_STATUS_UPDATE_REGISTER.

To resolve this issue, execute these triggers.




43

The following error occurred while processing INIT_ACTION for a view -
com.intellectdesign.canvas.viewdefinition.ViewDefinitionException: SYSERROR:Unable to create object for class 'NONE'.

To resolve this issue, update the instruction class name to 'DEFAULT' instead of 'NONE'.




44To change the widget title dynamically, the DOM was accessed using the attribute portlet-header in the DOM. Now, the suggested mechanism is to use widget API.The DOM structure is changed.

45In the row template, instead of 'this.VALUE' use this.record.<COLUMN_NO>.VALUE.


46In the CTHome.jsp, the code related to updating the metadata based on last metadata sync time is removed.Metadata update based on metadata sync time is handled by Canvas framework in the latest release.

47In the CTHome.jsp, there was code to include D3 charts which was causing the current session to terminate. Due to this code, all requests including log out did not work. To resolve this issue, the respective code was removed.


48

Mechanism to navigate to a workspace is changed.

Instead of using the existing mechanism:

iportal.workspace.metadata.getWorkspaceManager().ApplicationContainer.handleWorkspaceClick(workspaceid) 

use the following mechanism:

canvas.launch(
{
	workspaceId : "<WORKSPACE_ID>"
});
The canvas.launch API is introduced to take care of rendering a workspace, sub workspace, app or form.

49Radio Button form item is not rendering. To resolve this, update the ADDITIONAL_INFO_IND field value as 'Y' for RADIO_GROUP, CHECKBOX, CHECKBOX_GROUP form items in the FORM_ITEM_TYPE table.
18.1