Custom Client Application

This is a browser-based, BPM application that makes calls to the Client Application Framework.

The custom client application can use the following industry-standard technologies:

  • HTML5 - Applications built using the Client Application Framework can make use of HTML5 capabilities.
  • JavaScript - JavaScript developers can use the provided JavaScript library to invoke BPM services, which return JavaScript objects containing BPM and client application data.
  • JavaScript Framework:
    • AngularJS - Client applications can be developed using AngularJS. Therefore, AngularJS modules are provided to perform BPM services. Plus, data in client applications are accessed using AngularJS expressions.
    • Bootstrap - A framework for developing responsive, mobile-first web sites. It includes HTML- and CSS-based templates for forms, buttons, tables, and so on. Web sites created using Bootstrap automatically adjust for all devices: mobile, tablets, and desktops. The example client applications that are provided (see Example Applications) use the Bootstrap grid system.
    • PageBus - All components available to client applications publish events when actions are initiated in the component (for example, a work item is selected in a work list). These events are available to client application developers by subscribing to events using TIBCO PageBus.

While custom client applications are being developed, they can be stored, tested, deployed (as a WAR file), and so on, using the Application Development Platform. For information, see the TIBCO ActiveMatrix® BPM Client Application Management Guide.

Custom client applications are client resident AJAX applications, which means that they consist entirely of static resources that are served to the browser, which hosts the applications. Client application do not include servlets nor client-side executables, such as applets or .NET libraries. Although they are typically deployed to a Web Components BPM Logical Node using the Application Development user interface, client applications created with the Client Application Framework can be deployed to any web server (for example, Apache Tomcat).

Note: Application Development internally uses the Apache Jackrabbit database for repository management. There is no need for user interaction with this database, therefore, no user interface or command-line-interface is provided.

File and Folder Naming

When you create a custom client application, do not use any non-alphanumeric characters in file or folder names in the application.

Note: It is good practice to use camelCase as your convention for application file and folder names.

Client Application Execution

After the client application is deployed, it can be served to a browser using the following URL:

http://Host:Port/contextRoot/apps/appName.html

where:
  • Host is the name or IP address of the machine containing the BPM Logical Node.
  • Port is the port number used by the WebApp Implementation Type to communicate with web applications.
  • contextRoot is the root of applications deployed to the web server.
  • appName is the name of the WAR file, containing the client application assets, that was deployed to the web server.