The client platform provides a choice of runtime environments that enable Java applications to run across multiple operating systems.
For Lotus® Expeditor Client for Desktop, the runtime environment is JavaSE. For Lotus Expeditor Client for Device, the runtime environment is DeviceEE, which is a custom runtime environment that runs applications written to the Java ME Foundation Profile 1.1 specification.
The client platform provides a Service Framework that implements the OSGi R4 framework specification and provides a service-oriented architecture on top of the runtime environments. The OSGi framework specification is provided by the OSGi Alliance. The OSGi Alliance's mission is to specify, create, advance, and promote wide industry adoption of an open service delivery and management platform. Incorporating the OSGi standard into the client platform provides four very important capabilities:
- It enables multiple applications and components to share a single Virtual Machine (VM) that implements the Java specifications. This saves valuable resources on the client when running multiple applications because only one instance of the VM is launched rather than multiple instances of the VM.
- It enables applications to share services and packages, which further reduces resource requirements on devices.
- It separates service interface from service implementation and provides publish, find, and bind operations in support of a service-oriented architecture. This capability enables integration of business applications on the same device.
- It enables dynamic lifecycle management without a VM restart so components can be updated without impacting other unrelated components that are running at the same time.
The Eclipse framework is built on the Service Framework, which provides Eclipse with powerful capabilities, such as the ability to dynamically load and unload components without restarting the Eclipse framework and robust lifecycle management of components.
The client platform also provides optional OSGi services, such as UserAdmin, LogService, Configuration Management, and more.
Parent topic: Overview of the managed client platform: XPD621