Guide to Building Business Processes

     Previous  Next    Open TOC in new window  Open Index in new window  View as PDF - New Window  Get Adobe Reader - New Window
Content starts here

Versioning Business Processes

By using the WebLogic Integration versioning feature in the BEA WorkSpace Studio 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 Package Explorer pane, right-click the business process (Process.java file) for which you want to create a new version and select Process Versioning > Create Version.
  2. The Create Version window opens.

  3. In the Create Version window, enter the following properties:
    • Public URI—This is the URI (instance) by which external clients access the most active version of your business process. The default value is the public instance by which clients accessed the original version of the business process.
    • Version URI—This is the name of the versioned file and also the URI by which this version of the business process can be accessed in the BEA WorkSpace Studio.
  4. Click OK.
  5. The Create Version window closes and the new version of your business process is added to the Package Explorer pane (see Figure 21-1).

    Figure 21-1 Version


    Version

    The Version 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 and the Process.java file is not visible.
To Create a New Version of Your Process
  1. On the Package Explorer pane, right-click the business process (Process.java file) which you want to create a new version for and select Process Versioning > Create Version.
  2. The Create New Version File window opens.

  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 BEA WorkSpace Studio.
  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 Package Explorer pane.

    The Version 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 Package Explorer pane, right-click the business process (Process.java file) that you want to set to active and select Process Versioning > Make Active Version.
  2. 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 Version. 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 Package Explorer pane, right-click the business process (Process.java file) that you want to delete and select Process Versioning > Delete Version.
  2. The version of the business process you selected is deleted and removed from the Package Explorer 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 Process file and the Package Explorer pane 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 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 Properties view, 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:
    • loosely-coupled—select this option if you want the subprocess version to be set at the time that the subprocess is invoked. In other words, if an instance of your business process is currently running but has not yet reached the state of invoking the subprocess that you have created a new version for, the new version of your subprocess will be used when the process invokes the subprocess.
    • tightly-coupled—select this method if you want the subprocess version to be set at the time the parent process is invoked. In other words, if an instance of your business process is currently running but has not yet reached the state of invoking the subprocess that you have created a new version for, the old version of your subprocess will be used when the process invokes the sub process. The next time the main process is invoked, it will use the new version of the sub process when it invokes the subprocess.

 


Importing Versioned Business Processes

When you import multiple versions of a business process (Process.java) from another application, the the versioning relationship is not preserved in the imported business process (Process.java). You need to manually edit the wlw-config.xmlconfiguration file, which is located in the \Web\WEB-INF folder of your application.


  Back to Top       Previous  Next