...
The kernel is divided into a number of modules, among them spi and core. The spi module defines extension points and abstract helper classes. Extension types are not fixed and the kernel is designed to be as flexible as possible by providing an open-ended extension model. From the kernel perspective, extensions are just a set of SCA components. However, there are a number of known extension types defined by spi module, including:
- Component implementation types, e.g. Spring, Groovy, and JavaScript
- Binding types, e.g. Axis, CXF, AMQP, ActiveMQ, JXTA
There are also a number of add-on extensions that do not correspond to a well-know type:
- The JPA extension for O/R mapping
- The Geronimo Transaction Manager for transactional support in the runtime
- The HOWL-based Persistent Store for high-throughput persistence of conversational state