Configure Once Run Anywhere
Canvas Technology enables functionality across multiple devices using an approach that relies on Configuration as the key basis of enabling functionality. All extensions / hooks provided are kept in a very neutral manner (simple Java Interfaces on server side, or plain JavaScript on browser). This concept is termed as Configure Once Run Anywhere (CORA).
For the purpose of distribution through the public Stores provided by the OS vendors (like App Store, Play Store, etc.), Canvas Technology uses Cordova as the tool to package the application into a Hybrid App.
Packaging/Deployment for mobile/tablet – To package a product for a target mobile platform (like iOS, Android etc.), the app-rendering framework and Apache Cordova device APIs & plug-ins for the target platform are packaged together in the form of a hybrid app. The hybrid app can then be hosted on a store (Apple App Store, Google Play etc.) or even a company's own enterprise app store, from where the app can be downloaded and deployed on the devices. In general, all hybrid apps run on the device (not on the server) within a thin native container. When used with Apache Cordova, the apps acquire the ability to access device features such as accelerometer, camera and local storage.
Canvas Technology provides a fine grained entitlement modeling that allows for varied functionality to be modeled. Entitlement definition is layered:
This nature of layering provides the ability to create reusable solution packages that can be targeted at Customer segment level or event at specific Customer level. And since all the Apps are also tied to the entitlement model, automatic targeting of Apps based on the entitlement profile falls in place.
The entitlement itself gets configured at four levels:
This layered configuration allows for a wide variety of functionality to get modeled and the Data level entitlement addresses the key need for having to control access based on various fields that may be present as part of the functionality. A key benefit that the entitlement engine enables is to support multiple data level entitlements to be associated.
The following is the typical deployment architecture in which the applications built using Canvas Technology are deployed:
Few salient points to note are as follows:
- The web servers typically have a reverse proxy setup and there is a load balancer between the web and application servers for enabling clustered node access.
- The application servers can be in Active-Active or Active-Passive mode.
- Cluster management is enabled through the application server.
- Session Replication and / or Session stickiness is enabled as a configuration through the Application server.
- Applications built using Canvas Technology can be deployed on cloud-environment as well.
Canvas Technology by itself ensures that any content added to Session in the JEE Web container are Serializable and hence will not hamper Session Replication setup. But there could be cases where the end application may choose to add content in the Session. In such cases, it is the responsibility of the end application to ensure that the content they add is Serializable.
Refer CT 19.1 Release Overview for information on Canvas Technology Platform's current technology stack and cross browser support.
Internet Explorer's compatibility mode is not supported by Canvas Technology.