ClearPath ePortal orchestration provides the ability to specify how Web applications navigate, and interact with a server application. Use orchestration to
Specify how clients connect with and authenticate themselves to the server application.
Specify the sequence of message exchanges and data transformations that occur between the client and the server application.
Handle error and exception conditions.
Orchestrations are event driven and begin when a request for a new server application session is received from a client. After a session is established, each subsequent client request is handled by a specific client message event handler defined in the orchestration. Client message event handlers define the local processing and message exchanges with the server application that will occur as a result of the client request. When a client message is received, the event handler for that message is triggered causing the activities defined in the event handler to be executed until the event handler completes. An event handler usually executes activities that result in one or more message exchanges with the server application, local processing and branching, and the construction of a client message reply. For example, a client message might trigger multiple server message exchange activities followed by activities that consolidate the server responses into a single reply to the client.
Visual Studio with ePortal Orchestration provides the tools to
Specify how message exchanges are conducted with the server application after a client message is received.
Execute structured activities such as loops and logical branches to create unique paths through the logic of the server application.
Handle default orchestration scenarios that can include automatically generated client presentations.
Break and single-step through the activities of an orchestration when tracing message and data flow.
Generate the software necessary for deployment of the orchestration into a runtime ePortal environment.
Note: A server message exchange is not a transaction in the traditional sense since with ePortal orchestration, there is no accommodation for rollback or recovery over multiple client and server message exchanges.
Event Handler Types
An orchestration is made up of event handlers that include activities that handle the interactions with the server requested by the client through the client message. The following are event handlers that can be used in an orchestration.
Event Handler Type | Description |
---|---|
On Client Session Start | Triggered when a request for a new client session is received. Typically used to connect to the ClearPath server or send a "home" page to the client. For Sessionless Web service applications, this event is executed prior to each client request. |
On <client message name> | Triggered when the specified client message is received. |
On Client Session End | Triggered when an existing client session ends. For Sessionless Web service applications, this event is executed after each client request is processed. |
Orchestration Activities
Possible activities that can be selected from the ePortal toolbox and included in an event handler are listed here. Refer to Orchestration Toolbox Selections for detailed information about the items in the toolbox.
Activity | Description |
---|---|
Basic Activities | General functions, such as assigning values to variables or detecting and handling exception conditions. The functions are
|
Structured Activities | Functions that provide looping and branching capabilities. Use to conditionally control sequences of activities. Boolean-valued conditions are used for branching decisions. Conditions can be simple or compound and are specified using a predefined set of logical operators that operate on locally defined variables, client and server message data, literals, or exception data. The functions are
|
Communication Activities | Functions that establish communications and exchange messages with the clients and the server application. The functions are
|
Data Declarations | Local variables for temporary storage of data can be declared. For example, variables can be used for loop and branch control, message initialization and so forth. Examples of simple data types that can be declared are:
Examples of structured data types that can be declared are:
Example of data declaration passed to another process is:
A default initial value is assigned to the InitialValue based on the selected DataTypeName option. For example, if DataTypeName is Boolean, the default InitialValue is False. Note: When the data type is Array or Structure, the initial value property is disabled. The local data is available only while the logic of the request event handler is being processed. This data is unavailable to other request event handlers. However, similar data can be defined in other request event handlers. |
Orchestration Errors and Warnings
As an orchestration is created, the contents of the orchestration are continually validated. An error icon or warning icon appears in the orchestration tree adjacent to the invalid activity. Hover over the icon to obtain the error explanation. In addition, the errors and warnings are also listed in the Error List window.
A build does not complete if errors are present in the orchestration.
When a build occurs, errors and warnings appear in the Error List window. Double-click the error or warning in the Error List window and the activity that has the error or warning is highlighted in the orchestration tree.