Skip navigation.

Concepts and Architecture

  Previous Next vertical dots separating previous/next from contents/index/pdf Contents View as PDF   Get Adobe Reader

Change Management and Resource Organization

BEA AquaLogic Service Bus provides a number of capabilities to manage changes and organize large numbers of resources in the resource cache. The resources in the AquaLogic Service Bus resource cache include WSDLs, XML Schemas, XQueries, XSLTs, MFLs, WS-Policies, Business Services, and Proxy Services.

This section includes the following topics:

 


Resource Cache Users

AquaLogic Service Bus is focused on supporting a set of trusted IT department specialists who manage the resources and services in the resource cache on behalf of the organizations they represent. All such users are defined as integration administrators or integration deployers and have full permissions to modify all the resources in the resource cache.

Integration monitor users have full read access to the resource cache but cannot modify any resources. Typically, they are users who search or browse for resources or services.

Integration operator users have full read access to the resource cache and can only change the operational characteristics of the services.

AquaLogic Service Bus is not focused on supporting large numbers of end users managing their resources with fine grained security, as would be required in a shared enterprise repository and services directory or in trading partner management systems.

For more information about AquaLogic Service Bus users and roles, see Security Configuration in Using the AquaLogic Service Bus Console.

 


Projects and Folders

The resources in the AquaLogic Service Bus resource cache can be organized into separate projects. The projects can contain folders, which in turn, can contain other folders. The following figure shows the project and folder views in the AquaLogic Service Bus Console.

Figure 4-1 Project Explorer View of AquaLogic Service Bus Projects and Folders

Project Explorer View of AquaLogic Service Bus Projects and Folders


 

A typical use case is one in which corporate-wide standard resources (for example, schemas or abstract WSDLs) are located in one project, while department-level (local) resources are placed into separate projects per department. Additionally, each type of resource can be placed into separate folders in a project. Typically, a small team or an individual manages the resources in a project.

Resources can be moved between projects or folders and can be renamed. Resources that are located in one project can reference and use resources that are defined in other projects. Dependencies are preserved when resources are renamed and moved. All references to a renamed or moved resource are automatically adjusted. For more information about referenced resources, see Tracking Dependencies.

For more information, see Project Explorer in Using the AquaLogic Service Bus Console.

 


Sessions

Before you make modifications to resources in AquaLogic Service Bus, you must create a session. All modifications are made using the AquaLogic Service Bus Console in a given session.

Figure 4-2 Session Management in the Change Center

Session Management in the Change Center


 

A session can be considered a sandbox environment in which changes are kept private to the user making those changes. In other words, they are not visible to other concurrent users making modifications. Note that modifications made in a session are not deployed in the server until the session is activated, so it is not possible to execute the server with the changes in the session before activation. You can have only one session active at any time and should only log into the AquaLogic Service Bus Console through one browser.

To compare a resource modified in a given session against the resource that is already deployed to run time, you can temporarily exit the session, view the deployed resource, then reenter the session and view the changed resource. All resources are visible in the session. The view of all resources in a session is called the session view—it is a merged view of the unmodified deployed resources and the resources modified in the current session. Therefore, the session view at any point in time shows the configuration state if the session is activated at that point in time. The view of resources outside any session is the view of the deployed resources.

All individual session modifications, individual session activations, and undo operations for a session are performed in transactions to prevent data loss in the event of a failure. Sessions are persistent and long running—the restart of a server does not result in the loss of active sessions. This means that you can modify the configuration in a single session over a period of days (during which time the server can be stopped and restarted) if necessary. Each user has their own session, and can work in it independently without the need to lock other users out of the system. You cannot activate a session if another user is already in the process of activating their session. If another user is activating a session when you try to activate your session, the Activate button will be disabled and you will have to wait until the other session is activated before you can activate your session. In certain circumstances, the Activate button may not be disabled if you did not refresh the page or if you are directly using MBeans. In this case, you will time out after a short while.

Administrators have permissions to access other user's sessions and view ongoing changes, make updates in those sessions, or discard them.

For more information, see Using the Change Center in Using the AquaLogic Service Bus Console.

 


Concurrent Modifications

Sessions use an optimistic scheme for conflicts. When you activate a session, the changes you made to resources in that session become visible immediately in other sessions. If you deploy a changed resource that is open in another user's active session, the other user's session receives a message in the Change Center indicating that the deployed resource has changed in the run time since the user started modifications. The user of the active session can then:

For more information, see Using the Change Center in Using the AquaLogic Service Bus Console.

 


Tracking Configuration Changes

The system keeps a log of all users who activated a session along with any resource modified by the session and when it was modified. This provides the enterprise with auditing and tracking facilities in addition to a history of changes made to a particular resource or project. The log is visible in the Change Center in the AquaLogic Service Bus Console.

 


Tracking Dependencies

A crucial part of managing a large number of resources is establishing and exploring dependencies between resources. For example, it is useful to identify the WSDL that a service implements, or the XQueries used by a message flow configuration. AquaLogic Service Bus provides this capability by automatically tracking the references between resources and creating a graph of the dependencies. In both session views and deployed views, the AquaLogic Service Bus Console displays for a given resource:

Also, for each project and folder, the AquaLogic Service Bus Console displays other resources outside the project or folder that reference resources in the selected project or folder. The AquaLogic Service Bus Console also displays the resources that a given project or folder references. This aids dependency tracking—you can easily navigate the dependency graph in the AquaLogic Service Bus Console by clicking on the names of the referenced resources.

You can use this functionality to identify the dependencies between departmental projects or between departmental projects and corporate-wide shared projects in the resource cache.

Dependencies are preserved when resources are renamed and moved. All references to a renamed or moved resource are automatically adjusted.

 


Semantic Integrity

AquaLogic Service Bus protects the integrity of all resources in the session view. You can view a list of all current validation errors for all resources in the session view by clicking the View Conflicts link in the Change Center. Changes to a referenced resource can cause validation errors in any resources that reference it.

AquaLogic Service Bus allows you to create resources with most semantic errors. However, all such errors must be fixed before a session can be committed.

There are certain classes of validation errors that are never allowed. If you attempt to update a resource that has one of these disallowed validation errors, your update will fail. For example, where your configuration requires an XQuery, you cannot enter arbitrary text in place of the XQuery. If you try to do this, your update fails. The XQuery and XPath editors in the AquaLogic Service Bus Console provide a facility to validate your expressions. Click Validate to validate your XQuery and XPath expressions at design time. This reduces the possibility of run-time errors as a result of invalid configurations.

 


Undoing Modifications to Resources and Session Activations

You can undo tasks that you have performed in your AquaLogic Service Bus configuration during your current session, and you can undo session activations outside of a session.

Undoing Modifications to Resources

If you are working in a session, you can view a list of the modifications you have made in the session by accessing View Changes in the Change Center. You can undo specific tasks in the Change Center. An undo operation can result in objects becoming semantically invalid. For example, if a WSDL operation name change is undone, the proxy service routing to that operation on the service that uses that WSDL is semantically invalid. These validation errors are displayed immediately in the Change Center when you click the View Conflicts link.

Although you can undo tasks in any order (provided that individual undo operations result in valid data), the resulting configuration may be different depending on the order of undo. The undo operation sets the value of the resource to the value it had before the change to that resource. If the task being undone was one that created an object, there is no previous state to which an object can be returned—in other words, no object existed before this task was performed. Effectively, the undo operation deletes the new object from the session. In this case, errors occur for the objects that reference the one being deleted. You can view such errors on the View Conflicts page in the Change Center.

Undoing Session Activations

When you are not working in a session, you can view a list of session activations by accessing View Changes in the Change Center. You can undo a session activation in the Change Center. When you undo a session, the session activation is undone and all the operations performed in the session are lost. The system does not allow you to undo a session activation if an error in the run time configuration would result from the undo operation. For example, if you attempt to undo a deployment that removes an object that is being referenced by another object, that undo operation is disallowed. For more information, see "Undoing a Task" in Using the Change Center in Using the AquaLogic Service Bus Console.

For more information, see Using the Change Center in Using the AquaLogic Service Bus Console.

 


Importing and Exporting Configurations

An important part of large scale development is the ability to develop, test, stage, and deploy resources to a production system. AquaLogic Service Bus provides import and export features, and support for the global change of environment-specific attributes for resources. This functionality minimizes the expertise, time, and resources needed to achieve various deployment scenarios.

In a simple scenario, you can propagate your configuration from one instance of AquaLogic Service Bus to another instance by exporting all, or a subset of, the resources currently deployed in an AquaLogic Service Bus domain. The configuration you want to export is saved in a JAR file, which you can then import into a session on another AquaLogic Service Bus domain.

There are no restrictions on what can be exported. You can choose to export one or more projects, or select resources from one or more projects. The AquaLogic Service Bus Console also allows you to export a resource and all the other resources on which that resource depends, using the dependency tracking feature. You must be working outside of a session to export configurations. Only configurations that have been activated (that is, deployed to run time) can be exported.

You must be working in a session to import a configuration JAR file. You can choose to import only a subset of the exported data, and change the values of certain configuration data. You first open the JAR file, and then work on the configuration data to customize it.

You can perform many updates and import multiple JAR files in a single session. In this way, you can tailor the imported resources for the new domain before activating them.

Support for environment values is an important feature related to the import and export facilities. AquaLogic Service Bus allows you to find and replace certain values in resources in a global manner. AquaLogic Service Bus defines two types of pre-defined environment values:

Using the import functionality in concert with the find and replace feature, you can import a JAR file, find all the URLs containing a specific string (for example, localhost:7001), and change it to another value (say, productionhost:7002). The find and replace feature is provided to facilitate changing many similar values in a convenient way. It is not meant to replace a more careful tuning of configuration that may be required by complex deployment scenarios.

For more information, see System Administration in Using the AquaLogic Service Bus Console.

 


Scripting Support

You can perform all AquaLogic Service Bus configuration and deployment using the AquaLogic Service Bus Console. You can also use the WebLogic Server Scripting Tool (WLST) to automate deployment tasks.

For information, see Using the AquaLogic Service Bus Deployment API in the BEA AquaLogic Service Bus Deployment Guide.

For information about WLST, see WLST Command and Variable Reference in the WebLogic Scripting Tool.

 

Back to Top Previous Next