Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Expand
titleFor any changes done through Canvas, would it require to keep repackaging the application for changes to be reflected in the App distributed through Apple Store or Google Playstore?

For most of the scenarios, the answer is No. It is not required to redistribute the App. Canvas uses a unique modeling concept that allows for the UI configuration information to be updated seamlessly into the App without having the need to repackage the App. Having said that, there are few situations like changes to skins, images, logic written through Canvas extensions that would require a repackage.

Data Rendering or Data Submission 


Data submit to database via Request Modeler flow is failing
Expand
titleGrid widget has date column configured in Studio, but it is not rendering in end applicationGetting error when setting up the application in a new environment
title

Check for the following error pattern in the log fileerror logs:

Code Block
linenumberstrue
[com.intellectdesign.canvas.data.conversion.util.JSONToHashMapConverterserver.startup : 0][][][][c.i.c.a.s.AlertsSchedulerFactory][ERROR]
				 {[CTBAS00014CTALT01097]:TheException Stringoccurred iswhile eitherstarting nota inscheduler properand datethe format orexception is not{} a date: Format: dd/mm/yyyy , Value:  31-12-2030

Solution

If such date format mismatch occurs, then change the value of the date field to the user-preferred format.

Expand
}
org.quartz.SchedulerConfigException: Failure occured during job recovery.
	at org.quartz.impl.jdbcjobstore.JobStoreSupport.schedulerStarted(JobStoreSupport.java:663)

Check if any of the configuration in canvas-default-alertschdlrquartz.properties file is updated by comparing with the values in the original file in the CT platform release. If the value of the key org.quartz.jobStore.dataSource is changed, ensure that there is a datasource in that name.


Data Rendering or Data Submission 

Expand
titleGrid widget has date column configured in Studio, but it is not rendering in end application

Check for the following error pattern in the log file:

Code Block
linenumberstrue
{[CTAUD00155]:AuditHandlerInstruction.logException() - Encountered exception.
				 Exception message : An SQLException occurred while executing the insert operation.
Check if the request data has been modified to make the value of REFERENCE_NO column to null. If so, then the insert to the REFERENCE column in the OD_AUDIT table will fail
[com.intellectdesign.canvas.data.conversion.util.JSONToHashMapConverter][ERROR]
			 {[CTBAS00014]:The String is either not in proper date format or is not a date: Format: dd/mm/yyyy , Value:  31-12-2030

Solution

If such date format mismatch occurs, then change the value of the date field to the user-preferred format.


Expand
titleData submit to database via Request Modeler flow is failing

Check for the following error pattern in the log file:

Code Block
linenumberstrue
{[CTAUD00155]:AuditHandlerInstruction.logException() - Encountered exception.
				 Exception message : An SQLException occurred while executing the insert operation.

Check if the request data has been modified to make the value of REFERENCE_NO column to null. If so, then the insert to the REFERENCE column in the OD_AUDIT table will fail.


Expand
titleData fetch from DB table throws error

Scenarios:

  • Data fetch from DB table throws error in logs
  • Upgrading to latest CT binaries throws error in logs

For above scenarios, check for the following pattern in the error logs:

Code Block
linenumberstrue
Cause: java.sql.SQLSyntaxErrorException
Cause: java.sql.SQLSyntaxErrorException: ORA-00942: table or view does not exist
Cause: java.sql.SQLSyntaxErrorException: Unknown column
Cause: java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax;
Cause: java.sql.SQLSyntaxErrorException: ORA-00904: "COLUMN_NAME": invalid identifier
java.sql.BatchUpdateException: ORA-00904: "COLUMN_NAME": invalid identifier

For any exception of the above pattern, check the ctdblogs to find the SQL ID of the query that is failing. If the query is related to functional database/schema, fix the query. If the query is within CT or includes a CT table, check if all the incremental scripts were applied properly. Even then if not resolved, inform the CT Platform support team.


Encryption

Expand
titleHow to enable encryption of business data, request and response between client and server in the application built using Canvas?

You can enable encryption for the application built using Canvas by setting the 'ENCRYPT_SERVER_CALLS' property to 'Y' in the 'systempreferences.properties' file.

Note

When you enable encryption, Canvas will encrypt all requests coming to your application including log out.

A sample 'systempreferences.properties' file is available in CTModelHouseResource.jar in the Model House application that comes as part of the Canvas platform package.

Note that you must stop and start your application server to enable this feature. After the application server is restarted, access the widgets in the application and check the Network tab in the browser console to verify the encryption.

...