Creating an Executable vs. an Abstract Process
In Process Developer, you can build two kinds of business processes:
- •An executable process contains all the actual message data, operations, and partner information required for a running process. It uses the full power of data assignment and selection. Process Developer creates executable processes by default. You can simulate, deploy, remote debug, and execute an executable process.
- •An executable process contains all the actual message data, operations, and partner information required for a running process. It uses the full power of data assignment and selection. Process Developer creates executable processes by default. You can simulate, deploy, and execute an executable process.
- •An abstract process is a business protocol description document that tells your business partners what a process will look like when it runs. It outlines the steps of a process without actually filling in all the actions and data required for a running process.
An abstract process lets you share information with your partners without exposing how you intend to use data from your service. It gives your partners a way to understand how to create their WSDL files to work in your process and to tell them what information you plan to send them when the process runs. An abstract process outlines the type of data to be exchanged, as well as activities, time limits, error handling, and other meaningful pieces of information for the process.
You cannot simulate, deploy, remote debug, or execute an abstract process.
You cannot simulate, deploy, or execute an abstract process.
See also Creating an Abstract Process and Tips for Working with Abstract Processes.
Creating an Abstract Process
To create a process that is not immediately intended for simulation, remote debugging, or deployment, you can define the process as abstract.
To create a process that is not immediately intended for simulation or deployment, you can define the process as abstract..
To create an abstract process:
- 1. Select File > New > BPEL Process.
- 2. Select your project folder, and in the File name field, type in a name for your BPEL file. The .bpel extension is automatically added.
- 3. Select Advanced to view properties that you can set for this process.
- 4. Select Create as Abstract Process.
- 5. Click Finish.
You can make an executable process into an abstract one, and vice versa, by changing the process's Abstract Process property from No to Yes.
See also Tips for Working with Abstract Processes.
Tips for Working with Abstract Processes
As described in Creating an Executable vs. an Abstract Process, you can create a process not immediately intended for execution. When working with abstract processes, consider the following tips:
- •For an abstract process, the namespace is: http://docs.oasis-open.org/wsbpel/2.0/process/abstract
- •You can set an Abstract Process Profile in the process Properties view. The default profiles listed are referenced in the WS-BPEL 2.0 specification.
- •You can use an activity unique to abstract processes. For details, see Opaque.
- •You can use an opaque from-spec assignment in a copy operation. For details, see Assign.
- •You can make an abstract process into an executable one by changing the process's Abstract Process property from Yes to No. If your process contains an opaque activity, you are warned to replace it with a different activity.
- •If desired, you can follow the guidance in the WS-BPEL 2.0 specification for hiding syntactic elements in your process. See the examples below.
WS-BPEL XML Fragment Examples
Example 1 - Variable Declaration
<variable name="commonRequestVar" element="##opaque" />
Example 2 - Use of Invoke Activity
<invoke partnerLink="homeInfoVerifier"
operation="##opaque" inputVariable="##opaque"
ext:uniqueUserFriendlyName="request verification" />
Example 3 - Use of Opaque Activity
<opaqueActivity template:createInstance="yes">
<documentation>...</documentation>
</opaqueActivity>