For many reasons an activity can throw an uncaught fault. Process Server provides the ability to suspend a process on an uncaught fault, and if desired, you can also trigger an alert.
When an uncaught fault occurs, the Process Server can instantiate an alert service that can then invoke some action, such as resuming the process by stepping over the faulting activity, automatically correcting a data value that is known to cause a fault, or simply notifying an administrator that a processing is faulting.
You can design a BPEL process to serve as the alert service. The process must be based on a WSDL file named
. There is a BPEL process template based on this WSDL, as described in the steps below. Also, this file is automatically loaded in Participants view as a System Service, so that you create a process consumer participant that adds a receive and reply for the process.
In essence, the WSDL defines the alert operation that receives information from the server regarding the process Id, namespace, name, variable location path, and status of the faulting process.
An input message sent to an alert-service BPEL process would have the following parts, shown in the example:
Here are some general steps to consider when creating an alert-service BPEL process.
To create an alert-service BPEL process:
In the Project Explorer, create a new orchestration project.
File > New > BPEL
Name the process and click
On the Process Template page, select the Alert process template.
A new file opens on the Process Editor canvas with a
activity. The receive activity is based on the alert operation.
Finish building the process, adding the programming logic that you wish to occur for your use case when a process is faulting. For example, send an email, described in
Launch the Deployment Descriptor wizard and on the Partner Links tab, do the following:
Select the AlertPL My Role partner link.
Type in a
for the My Role partner link.
Start up the Process Server and deploy the alert-service process to the server. Note that in the BPR, there are no WSDL or XSD. They are already deployed and available on the server.
In the Process Console of the server, add the service to the Alert Service page. See the
Process Console Help
, refer to
Handling Process Server Alerts using Email and Identity Services
for a comprehensive sample alert service that you can download.