The BPEL console can be deployed to SwitchYard through its installer since SwitchYard-0.4 version.
This section provides an overview of the BPEL Console. The console provides the ability to view:
- The process definitions deployed to the BPEL engine
- The process instances executing in the BPEL engine
- The execution history of a process
- The history instances query
The easiest way to install the BPEL console is to download the SwitchYard installer and then run :
You will then be prompted for the location of your EAP installation, and the Installer will place the necessary WAR files in EAP.HOME/standalone/deployments.
Alternatively, you can just simply copy the switchyard-bpel-console.war folder and switchyard-bpel-console-server.war from the Tools distribution into the EAP_HOME/standalone/deployments folder. Remember that you will need to add a marker file named "switchyard-bpel-console.war.dodeploy" in the deployments folder as well to trigger the deployment.
|Because of this issue (https://issues.jboss.org/browse/RIFTSAW-391), we used the exploded war of the switchyard-bpel-console as the workaround.|
The BPEL console can be located using the URL: http://localhost:8080/bpel-console.
|It is recommended that you only open one bpel-console window within your browser, otherwise, you may see blank window once you logged in, or couldn't log in from your second window. For detail please see RIFTSAW-400.|
The first screen that is presented is the login screen:
The default username is admin with password admin.
The Access Control mechanism used by the admin console is configured in the $deployFolder/bpel-console/bpel-identity.sar/META-INF/jboss-service.xml. The JAAS login module is initially set to use a property file based access mechanism, but can be replaced to use any appropriate alternative implementation.
The users for the default mechanism are configured in the property file $deployFolder/bpel-console/bpel-identity.sar/bpel-users.properties. The entries in this file represent username=password.
The user roles for the default mechanism are configured in the property file $deployFolder/bpel-console/bpel-identity.sar/bpel-roles.properties. The entries in this file represent username=role. The only role of interest currently is administrator.
Once logged in, the 'Manage Instances' tab shows the currently deployed BPEL processes and their versions.
When a process definition is selected (Open), the list of active process instances for that process definition (and version) will be displayed in the bottom panel.
There is only one active version at a time. If you open a process definition the active version will be chosen by default. Sometimes you need to manage instances of a retired version (i.e. to terminate running instances). In that case the button More - Change Version allows you to select a different version of that process.
The Execution History allows you to inspect the BPAF history data associated with a process. You can specify a timespan and whether or not you'd like to see failed/terminated instances included in the chart.
The chart has various keyboard bindings to browse through the displayed execution data:
|Up Arrow||Zoom In|
|Down Arrow||Zoom Out|
|Left Arrow||Half-Page Left|
|Right Arrow||Half-Page Right|
|HOME||Max Zoom Out|
|ENTER||Max Zoom In to Focus|
|Mouse Drag||Scroll Chart|
|Shift Mouse Drag||Drag Select/Zoom|
|Mouse Wheel Up/Z||Zoom In|
|Mouse Wheel Down/X||Zoom Out|
|Right Mouse Button||Context Menu|
|Left Click||Set Focus|
|Double Click||Max Zoom In to Focus|
You need to explicitly enable history logging for a particular process through the 'deploy.xml' file and for the BPEL engine in general through the 'bpel.properties' file. In order to record history data, set the 'process-events' option for a particular process and make sure the 'org.jboss.soa.bpel.console.bpaf.BPAFLogAdapter' is enabled.
Process configuration example (deploy.xml):
When a process instance is selected, its details will be displayed in the Execution Details panel. The Instance Data button will also become enabled, allowing further detail about the process to be displayed. Likewise the Execution Path button opens the related instance execution graph.
The View tab shows the instance execution graph, while the Source tab below shows all activity events
Once a process instance is finished, could be 'COMPLETED', 'FAILD' or 'TERMINATED', you could search it through the History Query tab window as following:
You need to choose the Process Definition and the Process Status from the list box. You could also input the correlation key, start time and end time as criteria to search the history instances. Below is the search result.
On the History Instances List, when you double click a specific row, it will pop up a window that shows all of execution events that happened during this process instance execution.
|Please be noted that you have to explicitly enable the history logging in order to use the History Query functionality.
When a process definition is initially deployed (i.e. the first version of the process), it automatically becomes the active process definition. If that BPEL process definition is subsequently change and redeployed, then the previous version is retired, and the new version becomes the active version.
The only difference between an active and retired process definition is that a retired process definition can no longer create new process instances. However if there are current process instances associated with the retired process definition version, then these will continue to execute.
On some occasions, the administrator may wish to change which version of a process definition is considered the <emphasis>active</emphasis> version. Or they may simply want to retire the currently active process definition, so that no more process instances can be created, only allowing the already running process instances to continue until completed.
To change the status of a process definition, the administrator should select the Runtime tab from the lefthand panel, and then select the Deployments option. This will show the process definitions, their versions and their current status (active or retired).