Versioning Business Processes

By using the WebLogic Integration versioning feature in the WebLogic Workshop graphical design environment, you can make changes to your business process without interrupting any instances of the process that are currently running. Versioning provides the ability for any new process instances to use the newly-activated version, while process instances that are already in progress run to completion using the version that was active when they started.

Note: Before using versioning with long-running business processes, please read Using Versioning with Long-Running Business Processes.

When you version a business process, you create a child version of a business process that shares the same public URI (interface) as its parent. At run time, the version of the process that is marked as active is the process that will be accessed by external clients through the public URI.

Caution: You can version business processes, but not the individual controls associated with that process or other business process related components, such as schemas and transformations. When you version a business process, you must also version the subprocesses of that process; they are not versioned automatically when their parent process is versioned. This means that any changes to you make to these components also impact any instances of prior process versions that are currently running. To avoid this problem, as you make the necessary changes, create duplicates of these components and utilize the duplicates instead of the originals.

This section contains the following topics:

Creating a New Version of a Business Process

The first time you create a new version of a business process, the content of your original process is copied into the new version and the old process is no longer editable. If you ever want to return to the original state of your business process, it is recommended that you leave the first version of the process intact and only make any edits or updates to the second version of your process. To create a new version of your business process, complete the procedures in the following sections:

To Create the First Version of a Business Process

  1. On the Application tab, right-click the business process (JPD file) for which you want to create a new version and select Version Process....
  2. The Create Version window opens.

    Note: If your Application pane is not visible in the WebLogic Workshop, select View —> Application.

  3. In the Create Version window, enter the following properties:
  4. Click OK.
  5. The Create Version window closes and the new version of your business process is added to the Application pane.

    image

    The image indicates that this version of the business process is the active version of the process. By default, the first version of a process becomes the new version since and the original version becomes a virtual URI which points to the active version of the process. All currently running instances of the process will run to completion using the original process, but the next time an instance of the business process is invoked through the public URI, the version you just created will be used for processing.

Note: When you are creating process or service broker controls by right-clicking the virtual URI, the control will be created based on the active version of the business process with that URI. If you create the control by right-clicking the public URI of a version of a process, the control will be created based on the version of the business process that you selected.

To Create a New Version of Your Process

  1. On the Application tab, right-click the business process (JPD file) which you want to create a new version for and select Create New Version...
  2. The Create New Version File window opens.

    Note: If your Application pane is not visible in the WebLogic Workshop, select View —> Application.

  3. In the Create Version window, enter a value for the Version URI, that is the URI by which this version of the business process can be accessed in the WebLogic Workshop.
  4. If you want this version of the business process to be the active version of the process, select the Active Version check box. You can change a version of a business process to be active at any time, see To Make a Version of a Business Process the Active Version.
  5. Click OK.
  6. The Create Version window closes and the new version of your business process is added to the Application pane.

    image

    The image indicates that this version of the business process is the active version of the process. All currently running instances of the process will finish processing, but the next time an instance of the business process is invoked through the public URI, the version you just created will be used for processing.

Configuring the New Versions of Your Business Process

To Make a Version of a Business Process the Active Version

You can change which version of your business process you want to be the active version at any time. To do so:

  1. On the Application tab, right-click the business process (JPD file) that you want to set to active and select Make Active Version.
  2. Note: If your Application pane is not visible in WebLogic Workshop, select View —> Application.

    The version of the business process that you selected is updated in the Application pane to be the new active version, by changing its icon to image . All currently running instances of the process will finish processing, but the next time an instance of the business process is invoked through the public URI, the version you just marked as active will be used for processing.

Editing Versions of Business Processes

You edit any version of a process the same way that you edit any original business process. However, there are a some things you should keep in mind:

Deleting Versions of a Business Process

To Delete a Version of a Business Process

  1. On the Application tab, right-click the business process (JPD file) that you want to delete and select Delete Version.
  2. Note: If your Application pane is not visible in the WebLogic Workshop, select View —> Application.

    The version of the business process you selected is deleted and removed from the Application pane.

Notes: If you delete the active version of a business process, the newest version of that business process automatically become the active version. If you delete the last remaining version of a business process, the content of that process is copied into the original JPD file and the Application tab is updated accordingly.

Using Versioning with Long-Running Business Processes

Some business processes are by nature long-running—meaning that they have a prolonged life span during which an ongoing business task is being automated or managed. By default, WebLogic Integration's versioning capability allows only process modifications to be applied to new process instances, not to those already in progress at the time of the change. However, in the case of long-running processes, it is sometimes desirable to make changes to the process definition to reflect changing business conditions and to have these changes applied to process instances already in progress. To accomplish this goal, BEA recommends the following design practices:

Note: You can enable, disable, or set the activation time for versions using the WebLogic Integration Administration Console. To learn more, see "Managing Process Versions" in Managing WebLogic Integration Solutions, which is available at the following URL:

http://download.oracle.com/docs/cd/E13214_01/wli/docs81/manage/processconfig.html

To Specify the Version Strategy of a Business Process

  1. Select the Start node of the business process which version strategy parameter you want to change.
  2. In the Property Editor, select the version strategy method that you want to use for the sub processes process logic. From the list box, select one of the following:

Importing Versioned Business Processes

When you import multiple versions of a business process (JPDs) from another application, the the versioning relationship is not preserved in the imported JPD. For example, if the original versions looks like the following:

JPD.jpd
    JPD_v1.jpd
    JPD_v2.jpd 

the imported business processes will look like:

JPD_v1.jpd
JPD_v2.jpd 

This means that you need to manually edit the wlw-config.xmlconfiguration file, which is located in the \Web\WEB-INF folder of your application. To learn about this configuration file, see wlw-config.xml Configuration File.

Related Topics

For more information about versioning, see the information published regarding the VersionException class in the com.bea.wli.bpm.runtime.versioning package and the VersioningConfigurationMBean interface in the com.bea.wli.management.configuration package in the WLI Javadoc at the following URL:

http://download.oracle.com/docs/cd/E13214_01/wli/docs81/javadoc/index.html 

wlw-config.xml Configuration File

Previous Document Next Document