One of the key design principles of Fabric3 is extensibility: middleware service containers should maintain a small footprint and only include the features required by an application. In keeping with this, Fabric3 is architected as a small kernel with additional functionality provided through extensions. This allows users to choose the capabilities they need or provide them through custom extensions.
...
- Spring
- JPA/Hibernate with XA transactions
- Timers
- JMS with XA transactions
- Web Services
- REST/JAX-RS
- ZeroMQ Web 2.0
- Web Applications
Since simplicity is also a design goal, Fabric3 attempts to make creating custom extensions as straightforward as possible: write an SCA Fabric3 contribution and drop it in the runtime /extensions directory. The Fabric3 runtime is itself assembled from a series of SCA components so once you have mastered the SCA Fabric3 programming model, you are well along to understanding how to customize Fabric3the runtime.