As well as providing a complete implementation of the enterprise OSG i programming
model, WebSphere provides some useful extensions, particularly in the area of mod-
ule granularity. To some extent, these extensions anticipate developments in the next
release of the OSG i Enterprise Specification.
When running in the WebSphere server, OSG i applications don't have visibility of bun-
dles belonging to other applications. This ensures applications don't interfere with
each other. Each application runs in its own OSG i framework, instead of all application
bundles running in a single flat framework (the normal pattern for OSG i frameworks).
This is similar to the normal mode of operation for Java EE applications, where only
JAR s within the same EAR are on the classpath. Sharing bundles is often convenient, so
your applications can include a mix of private content and shared content.
WebSphere supports the notion of a composite bundle . A composite bundle is composed
of several constituent bundles, but it appears as a single bundle to the outside world.
This extra level of granularity makes it easier to distribute coherent collections of bun-
dles and also allows packages to be shared within a composite bundle, but hidden
from the outside world.
Managed application update and extension
Another area where WebSphere adds value beyond what's in the OSG i Enterprise
Specification is in the area of application administration. One of the beauties of OSG i
is that all OSG i applications are updateable; multiple versions of a bundle can co-exist
in a framework, and if the older version is stopped, dependent bundles will rewire to
the new version (or the other way around, if you want to downgrade a bundle). Web-
Sphere provides administrative support for application management that allows
upgrades to be staged, and then rolled out in a managed way (see figure 13.7).
WebSphere Application Server also includes an SCA implementation, based on
Apache Tuscany. Having both SCA and enterprise OSG i support precanned in one
package makes using the two programming models together much easier; it means
you can get the significant benefits of SCA for distributed OSG i and legacy integration
without any of the platform assembly pain we hit in chapter 10.
Among the servers we'll discuss, WebSphere is unusual in how many enterprise
OSG i features it offers. Not only does it support the whole of the enterprise OSG i pro-
gramming model, as defined in the specification, it offers several extensions to the
model, such as composite bundles and the ability to update components of an appli-
cation with near-continuous availability. Some of the enhancements are also present
in the Apache Aries codebase, but some are unique to WebSphere.