FUSE ESB 4 still supports JBI. However, by being based on OSGi, FUSE ESB 4 provides additional flexibility.
FUSE ESB 4 has a layered architecture based on OSGi:
Technology layer — Includes technologies such as JBI, NMR, JAX-WS, JAX-RS, JMS, Spring, and JEE.
FUSE ESB Kernel — Powerful, lightweight runtime container that extends the OSGi Framework to provide additional functionality to handle OSGi bundles.
OSGi Framework — Implements OSGi functionality, including managing dependencies and bundle lifecycles.
FUSE ESB Kernel is based on Apache ServiceMix Kernel, a powerful, lightweight, OSGi-based runtime container for deploying and managing bundles to facilitate componentization of applications. FUSE ESB Kernel extends the OSGi layers with console shells and commands, logging, hot deployment, provisioning, dynamic configuration, administration, and Spring DM support to handle OSGi bundles.
FUSE ESB Kernel provides dynamic configuration so configuration changes are dynamically propagated to the services. FUSE ESB Kernel also provides native OS integration and can be integrated into your operating system as a service so that the lifecycle is bound to your operating system.
Configuration in FUSE ESB Kernel is defined using property files within the
\etc
directory of your installation. These configurations are monitored and changes to
the properties files are dynamically propagated to the services. This mechanism is
enhanced with a directory polling mechanism similar to the one used for hot
deployment. See Managing the Container for more
information on configuration. Also see the information on configuration
and the Configuration Admin service on the Apache Felix site.
Figure 1.1 shows the component technologies that FUSE ESB Kernel provides:
Console — Extensible GShell console to manage services, install and manage applications and libraries, and interact with the FUSE ESB Kernel runtime. See the Console Reference Guide.
Logging — Powerful, unified logging subsystem. Use console commands to display, view and change log levels. See Managing the Container.
Deployer — Supports hot deployment of OSGi bundles. You can do updates and deletes and the changes are handled automatically. See Hot Deployment.
Provisioning — Provides multiple mechanisms for installing applications and libraries. See Provisioning OSGi Features.
Admin — Use console commands to administer instances of FUSE ESB Kernel. See Managing the Container.
Spring DM for OSGi — Simplifies
building Spring applications that run in an OSGi framework. See Spring support and Spring dynamic modules for OSGi in