Designer > Simulation and Debugging > Selecting Simulation Paths and Properties

Selecting Simulation Paths and Properties

Add an endpoint reference address to simulate with.
You can modify certain BPEL elements to cause different simulation events to occur.
For example, you can change a data value in a receive message variable to cause a link transition to be true or false. You can also change sample data values for output and fault messages.
Similarly, you can update the value of correlation properties, if needed, and also update the address information for a partner link.
The following table lists the simulation property for each BPEL element that you can modify.
Simulation Property
Input Message
Input attachments
Set the instance data for the simulated message to receive
Select the onMessage or onAlarm branch to execute for simulation. You must select an option before you simulate a Pick.
onMessage branch of pick or onEvent Event Handler
Input Message
Set the instance data for the simulated message to receive
Output Message
Output attachments
Set the instance data for the simulated message to return
Set the result of the output message to Normal or Fault
Fault Name
When the Result is set to Fault, you can select a Fault Name from the list. Fault names are defined in the associated WSDL file.
Fault Message
Fault Attachments
Set the instance data for the simulated Fault message.
For details, see Selecting an Invoke Subprocess for Simulation.
Wait in Seconds
Actual wait time in seconds for simulation. The activity wait time can be longer than you want to wait during simulation. This is a way to shorten that time.
Partner Link
My Role and Partner Role
Endpoint reference address that is used in a dynamic assignment within a Copy operation
The following table lists the execution property for each BPEL element that you can modify. Note that the Execution properties are only available during simulation or remote debugging and do not normally appear in the Properties view.
Execution Property
Correlation Set
Correlation Set Data
Update the current value of the correlation property
Partner link
Add or update address information for the partner link
For details on scenarios using correlation sets, see Process Exception Management.

Selecting an Invoke Subprocess for Simulation

Select a different process to synchronize with the process deployed to the server. If this invoke activity is defined with a BPEL process, you can step into it during simulation.
A subprocess is a BPEL process that is invoked by another BPEL process. You can create one BPEL process, deploy it, and then use the resulting service's operation to create an invoke activity.
During simulation, you can use the invoke activity's simulation property, subprocess, to select a BPEL process. By making this selection, you can step into the subprocess and simulate it when you step to the invoke activity. For details on creating a subprocess, see Creating a BPEL Process as a Service for Another BPEL Process.
To select an invoke subprocess for simulation:
  1. 1. Select an invoke activity that calls a BPEL process.
  2. 2. In the Properties view, select All.
  3. 3. In the Simulation category, select Subprocess.
  4. 4. At the end of the row, click the Dialog button to open the Process Selection dialog.
  5. 5. Select a process from the workspace.
If the sub-process has a process-level compensation handler, be sure to set a breakpoint on an activity in the compensation handler. If you do not have a breakpoint set on the compensation handler, simulation steps over it rather than into it.
Note that during simulation, depending on your process logic, you can go back and forth for execution steps between the main process and the subprocess. In the Debug view, select the execution thread that you wish to execute next.

Simulating Event Handlers

During simulation, there are different debug targets for the main process and for event handlers. You can step into an event handler at any point in the simulation of its scope, and then select the main target to continue simulating the scope in the main process.
The following illustration shows the simulation targets:

Simulating Fault Handlers

During simulation, you can execute a fault handler by setting a simulation property for the relevant invoke activity.
In the Properties view, set the Result property to Fault and then select the appropriate fault name and variable.
For more information, see Setting up Sample Data Values for Input, Output, and Fault Messages.