JBoss.orgCommunity Documentation
This section provides an overview of the BPEL Console. The console provides the ability to view:
The BPEL console can be located using the URL: http://localhost:8080/bpel-console.
The first screen that is presented is the login screen:
The default username is admin with password password.
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 instancs 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 wether 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:
Keyboard and Mouse Commands | |||
---|---|---|---|
Up Arrow | Zoom In | Down Arrow | Zoom Out |
Left Arrow | Half-Page Left | Right Arrow | Half-Page Right |
Page-Up | Page Left | Page-Down | Page Right |
TAB | Next Focus | Shift-TAB | Previous Focus |
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 |
Backspace/Back Button | Back | 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):
<deploy xmlns="http://www.apache.org/ode/schemas/dd/2007/03" xmlns:bpl="http://www.jboss.org/bpel/examples" xmlns:intf="http://www.jboss.org/bpel/examples/wsdl"> <process name="bpl:HelloGoodbye"> <active>true</active> <process-events generate="all"/> <provide partnerLink="helloGoodbyePartnerLink"> <service name="intf:HelloGoodbyeService" port="HelloGoodbyePort"/> </provide> </process> </deploy>
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.
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 active 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).
To change a particular version from retired to active, simply select the retired version and press the Activate button in the bottom right.
To retire a currently active process definition, simply select the particular version and then press the Retire button in the bottom right.
When RiftSaw has been installed within the JBossAS environment, there is a property file
located at ${JBossAS}/server/default/deploy/riftsaw.sar/bpel.properties
.
This property file contains a number of properties that are specific to ODE, and if interested in these properties, then you should refer to the ODE documentation. Only one point to note, the name of the property in this file maybe prefixed with bpel., however in the ODE documentation the prefix would be ode..
This section will present the properties that are specific to RiftSaw.
bpel.uddi.* | These properties relate to the UDDI support, which is discussed in a subsequent chapter. |
bpel.jaxws.client.initializer.impl | This property is automatically set upon installation, based on the JAXWS stack being used. This value should not be changed. |
bpel.ws.stableInterface (default false) | This property determines whether the Web Service interface, associated with a BPEL process, will be updated when a new version of the BPEL process is deployed. The benefit of setting this to false is that changes to the WSDL will be made active with the BPEL process. However the issue is that during the transition between the interfaces, the web service will momentarily be unavailble - which may cause heavily used services to reject requests. By setting this value to true, then the web service will remain available while the BPEL process is updated, however any changes in the WSDL will not be made available. |
bpel.event.listeners (org.jboss.soa.bpel.console.bpaf.BPAFLogAdapter) | Enables the BPAF logging used by the console to display the process execution history. |
Apache ODE generates a set of events on the process running. below is the steps for you to enable it. for more detail information on this, please consult the ODE's Execution events guide.
<process-events generate="all"/>
.
bpel.properties
.
bpel.event.listeners=org.apache.ode.bpel.common.evt.DebugBpelEventListener debugeventlistener.dumpToStdOut=on
By registering the DebugBpelEventListener, it will use the log's DEBUG level for the BpelEvent information.
By setting the debugeventlistener.dumpToStdOut=on
, it will render the information on the console as well.
We've also provided an out-of-box example to demonstrate the adding a custom listener. Please see the bpel_event_listener
example for more information.
If an active process definition is undeployed, any active process instances will be terminated. If this is not desired behaviour, then the administrator should first retire the process definition (version) using the BPEL console, and then when all active process instances for the version have completed, it can be safely undeployed.
So below is the recommended steps for safely undeploy processes.