Let introduce an other player: Pax-CDI! It is fully annotation based and a well known JavaEE standard with some additional annotations to deal with OSGi services. I really prefer this way for development.
I'm used to deal with these 3 technologies and here are the case where I use one or another: * I'm using blueprint when: * * I would do spring xml binding to third parties classes: e.g. declaring ciphers or crypto algorthms binding... In this case Annotation-based configurations comes with some boilerplate code. * * When dealing with JPA/JTA: Aries Jpa and Aries transactions are really nice OSGi integration stacks and they're blueprint based. * * When I dealing with some init/destroy-methods in a bundle fragment. * I'm using Declarative service when I have to code some low-level modules (all modules where the stack shouldn't need BP or CDI): DS is lighter than its concurrent. * I'm using Pax-CDI everywhere else: its really a pleasure to just add @Inject @OsgiService on a bean attribute. Regards, Charlie 2016-03-18 12:21 GMT+01:00 ellirael <[email protected]>: > I personally use Blueprint cause of: > 1. common spring-like xml style of DI > 2. prototype scopes > 3. creating and describing internal skeleton of bundle in one file > 4. CXF integration > > > > > -- > View this message in context: > http://karaf.922171.n3.nabble.com/Blueprint-or-DS-or-what-to-use-tp4045845p4045852.html > Sent from the Karaf - User mailing list archive at Nabble.com. > -- Charlie Mordant Full OSGI/EE stack made with Karaf: https://github.com/OsgiliathEnterprise/net.osgiliath.parent
