Looking at Enterprise OSGI and Apache Aries
Apache Aries is an open source project for creating Enterprise OSGI Applications. Enterprise OSGI is all about using OSGI concepts, programming model and technologies in Enterprise Java space in a standard way, like JPA, JTA, JMX and so on.
With Enterprise OSGI, you also need to provide some way of dealing with dynamic nature of OSGi applications, where osgi components can activated or deactivated at any time ,managed and wired together with other components to form a solution. That’s where the the Blueprint Container specification was introduced in the latest OSGi specification, which provides a simple and easy programming model for creating dynamic applications in the OSGi environment.
The Blueprint Container uses dependency injection using a XML based configuration for managing the component configurations, similar to Spring. The concepts are similar to my earlier article – Getting Started with Spring and OSGI , where I showed how to use Spring applications in OSGI container.
Apache Aries provides an implementation of Blueprint container and containers for JPA, JTA, JMX on how to use enterprise Java services in a OSGI environment. Apache Aries is currently in Apache Incubator and provide quite a few samples to evaluate and try the Blueprint container implementation.In my view, the future of Enterprise OSGI is promising and would provide a way for creating and dealing with dynamic applications in Java world. Similar to other programing model, the benefit of Enterprise OSGI programming model in the near future would be applicable based on the requirements and not all applications would require this behavior.