Runtime Environment

The Infinity Process Platform runtime environment is composed of:

The Infinity Process Platform Engine can run either in a managed environment or in a non-managed environment. In the non-managed environment, the Process Engine communicates directly with the audit trail database via JDBC connections.

In the managed environment, which is represented by an application server, the Process Engine uses a data source provided by the managed environment to communicate with the audit trail database. The creation and configuration of the data source is performed completely by the application server.

From the client point of view, Infinity Process Platform runtime engine can operate in the same JVM as the client, which is named Spring local mode, or in a separate JVM accessed remotely, which is named remote or EJB mode. For the latter, the Infinity Process Platform Engine must be deployed to an EJB container.

Operating in Remote Mode

The clients can access the Infinity Process Platform Engine remotely. For that the process engine must be deployed as an enterprise application to an application server. Infinity Process Platform delivers a set of Enterprise Java Beans, located in carnot.ear, which must be deployed to an EJB server or to a set of clustered EJB servers. If the deployment is done in a clustered environment, the administrator must ensure that the environment remains consistent (i.e. all EJB servers in this runtime environment must be configured to access the same audit trail database).

Supported EJB servers comprise all supported J2EE and Java EE compliant application servers. Instructions on how to deploy the Infinity Process Platform Engine to the runtime environment has been provided in section Deploying Infinity Process Platform Components to an EJB Application Server of the Deployment Guide. In the Application Server Setup chapter of this guide you can find a set of server vendor specific deployments for a variety of servers Infinity Process Platform has been tested with.


Figure: Overview of the Infinity Process Platform Runtime Environment

Audit Trail Database

The audit trail database stores all the versions of the deployed model and all historical records of the progress of process instances from start to completion or termination. Such information includes e.g. date, time and performer of activity instances belonging to the process.

The database is accessed via JDBC data sources that must support XA transactions, which are supported since JDBC 2.0. Infinity Process Platform components may either obtain a pre-configured data source from the application server, or create a data source based on the parameters stored in a properties file or deployment descriptors. Infinity Process Platform recommends the data source to be provided by the application server whenever possible. A detailed description on how to configure a database to use it as your audit trail database can be found in the chapter Setting up the Audit Trail Database of the Deployment Guide.

The audit trail database can be cleaned up if necessary. However, this action should be reserved to administrative scenarios where the entire system must be reset by deleting all data in the audit trail, for example before deployment of a different model. Refer to chapter Cleaning up the Audit Trail Database in the Infinity Portal documentation for detailed information.

One Audit Trail Database - Multiple Model Deployment

Infinity Process Platform supports deployment of more than one model in one and the same audit trail database. This is specifically supported in case of referencing model and referenced model. You should deploy the referenced model first and then the referencing model for the expected results.