Using the Participants View
The Participants view is the key starting point for developing a BPEL process. It guides you to provide the key ingredients for a process: the roles that the process and partner services play and the interface for each role. Further, once you define an interface, you can drag its operation to the Process Editor canvas to create process activities. For example, a receive activity is created from the interface operation associated with a process service consumer.
The following illustration shows an example of participants and their interfaces:
The Participants view is empty unless a process is open. The view is process-based; that is, it shows participants only for the process in focus.
In this view, you can do the following (on-premises only):
Creating a New Process Service Consumer Interface
A Process Service Consumer is a participant Web service that is used in building a receive and/or reply activity. It consists of a name and an interface.
You can create a service consumer in stages:
- •Enter a name or accept the default name, Process_Consumer.
- •If interface resources are available, you can define the interface. If they are not, you can add them later, in the Properties view.
- •By completing the participant details, you are essentially creating all the required elements needed for a process' receive and reply activities.
Creating a New Process Service Consumer
Here is a set of steps that describe how you create a new process service consumer:
- 1. Ensure that you have a process open in the Process Editor.
- 2. In Participants view, right-mouse click on Process Service Consumers and select New Process Service Consumer.
- 3. The default Consumer Name is Process_Consumer. If desired, rename this to something more meaningful. For example, if the Web service is requesting that the process check inventory items, name the service consumer inventoryRequestor.
- 4. If needed, click OK to accept the name and to finish the details later in the Properties view. If you are ready, do one of the following:
- - If you are ready to add details, you can either select an already imported interface or create a new one.
- - To select an interface that you have already imported into the workspace, use the Interface tree. Select the WSDL operation for this service consumer.
The tree shows several categories: WSDLs imported into the process, WSDLs in the current project and referenced projects, other workspace orchestration projects containing WSDLs, and System Services WSDLs. For details on System Services, see
System Services Interfaces.
To create a new interface, select
Generate Interface. See
Creating a New Interface for details.
Process Service Consumer Properties View
The Properties view of a Process Service Consumer shows several details, including the Participant name.
The service interface selected is also shown. Select the Service Interface link to view the WSDL. You can clear this interface, described in
Clearing a Service Interface from a Participant.
The view also contains a property for adding a callback interface, which is described in
Creating a New Callback Interface.
The Partner Link tab shows the BPEL constructs that were created for this participant. Select the Partner Link Type (or the My Role link) to view the WSDL that was automatically created for this participant. The WSDL contains the partner link type definition required. This is created as a private WSDL that does not display in the WSDL folder of the project. However, it is a necessary project resource, and during deployment, Process Developer includes this resource in the deployment package.
Creating a New Partner Service Interface
A Partner Service Provider is a participant Web service that is used in building an invoke activity. It consists of a name and an interface.
You can create a partner service provider in stages:
- 1. Enter a name or accept the default name, Provider.
- 2. If interface resources are available, you can select the interface. If they are not, you can add them later, in the Properties view
When you complete the participant details, you are essentially creating all the elements needed for a process' invoke activity.
Creating a New Partner Service Provider
Here is the procedure for creating a new partner service provider:
- 1. Ensure that you have a process open in the Process Editor.
- 2. In Participants view, right-mouse click on Partner Service Providers, and select New Partner Service Provider.
- 3. The default Provider Name is Provider. If desired, rename this to something more meaningful. For example, if the Web service is being invoked to price items in an order, name the service provider orderPricingSystem.
- 4. If you are not ready to fill in the details, click OK to accept the name. If you are ready, finish this procedure by selecting, importing, or creating an interface, as described in the following paragraphs.
Tasks you will need to perform are:
- •To select an interface that you have already imported into the workspace, use the Interface tree. Select the WSDL operation for this service provider.
- - The current BPEL process and the WSDL interfaces currently in use for other participants (if any).
- - WSDLS imported into the project and referenced projects. See Using Project References.
- - Other workspace orchestration projects containing WSDLs.
- - System Services WSDLs. For details on System Services, see System Services Interfaces.
- •To import an interface, select Import Service Reference. For details, see Importing a Service Reference.
- •To create a new interface, select Generate Interface. See Creating a New Interface for details.
Partner Service Provider Properties View
The Properties view of a Partner Service Provider shows several details, including the Participant name.
The service interface selected is also shown. Select the Service Interface link to view the WSDL. You can clear this interface, described in
Clearing a Service Interface from a Participant.
The view also contains a property for adding a callback interface, described in
Creating a New Callback Interface.
The Partner Link tab shows the BPEL constructs that were created for this participant. Select the Partner Link Type (or Partner Role link) to view the WSDL that was automatically created for this participant. The WSDL contains the partner link type definition required and is created as a private WSDL that does not display in the WSDL folder of the project. However, it is a necessary project resource, and Process Developer includes it in the deployment package.
Creating a New Callback Interface
Select or create the port type and operation for a participant to call back.
Each Web service in a process, represented by receive, reply, and invoke activities, must have a service interface. The interface describes the operations provided by the service.
You can choose to add a callback interface, which allows the service provider to invoke operations on the service consumer. For example, in a service interface, the process sends an order and the partner replies with an order ID. In a callback interface, the partner can send an order shipment notice.
When you add a callback interface, Process Developer generates a standard BPEL partner link type for that participant and stores it in a WSDL. This makes the participant relationship clear for future users of the WSDL and allows new processes that use the service interface to automatically see the callback interface.
The details for creating a callback interface are the same as creating a service interface. See:
Tips:
- •Process Developer adds the BPEL-required details, namely partner link type definitions, to a new WSDL. It adds definitions that need to be seen by clients of the process in a file named [process].public.wsdl. It places definitions that are private to the process (that is, partner link types for partner services) in a file named [process].public.wsdl.
- •The Callback participant displays as a child participant in the Participants view.
Clearing a Service Interface from a Participant
Remove a service interface from a participant.
You can clear a service interface from a participant from the Properties view.
- •From the Participants view or the Outline, select a participant.
- •In the Properties view. select the Dialog button in the Service Interface row.
- •In the Service Interface dialog, select the Clear button in the Interface row.
Creating New Activities from the Participants View
After creating participants and their interfaces, you can drag an operation or task to the Process Editor to create activities. These activities contain the required participant name and operation. You can then use the activity's Properties view to provide data assignments.
The following table shows the activities that the Process Developer creates when you drop an operation onto the Process Editor canvas.
Drag an operation from this participant's interface | To create this activity or activity pair |
---|
Process Service Consumer one-way operation | Receive, onMessage (if Pick is selected), or onEvent (if event handler is selected) |
Process Service Consumer two-way operation | Receive-Reply, onMessage-Reply, onEvent-Reply |
Process Service Consumer Callback | Invoke |
Partner Service Provider | Invoke |
Partner Service Provider Callback | Same activities as process service consumer for one-way and two-way operations |
See also:
Creating a New Variable From an Activity's Property View
Create a new process variable for a receive or other activities.
Create a new process variable for a receive onMessage, onEvent, reply, or invoke activity as follows:
- 1. Select the Properties view of an activity.
- 2. Open the Data, Input or Output tab of the activity.
- 3. For the Assignment Type, select Single Variable.
- 4. In the Variable list, select New Variable.
The variable name suggested is one of the following:
- •The qualified name of the schema element for a single-part element WSDL message
- •The local name of the message if the single-part element is an XSD type, such as string
- •For a multi-part WSDL message, the local name of the message
In the Scope field, select the process or a scope to make the variable global or local.
The Variable Type is derived from the WSDL message definition.