Se preguntan ¿Qué es OSGi? y supongo que todos hemos usado eclipse alguna vez y con eclipse, equinox. Equinox es un contenedor OSGi implementado por eclipse.
Bueno en pocas palabras eso es OSGI, OSGi proporciona funciones más parecidas a un contenedor web, pero es más versátil. OSGi te permite crear aplicaciones a partir de componentes.
Que es spring? Si no saben que es spring, no han leído otros posts. Spring es el framework que provee inyección de dependencias y programación orientada a aspecto. Y me quedo corto, porque spring soluciona muchos problemas que nos topamos en el desarrollo con subproyectos: spring security, spring Ldap, spring MVC, etc.
Si fueron un poco observadores, notaron que osgi es una tecnología que nos permite desplegar módulos o componentes y spring nos permite trabajar con diferentes tecnologías de forma más fácil.
Spring Dynamic Modules hace más fácil escribir aplicaciones Spring que puedan ser deployeadas en un entorno OSGI, y que puedan aprovechar las ventajas de los servicios que ofrece OSGi.
Spring's OSGi soporta también hacer más simple y más productiva el desarrollo de aplicaciones OSGi. Parar aplicaciones empresariales, la combinación de Spring Dynamic Modules y the OSGi platform provee:
• Mejor separación de la logica de la aplicación en modulos.
• La habilidad de desplegar diferentes versiones, de los modulos.
• La habilidad de descubrir dinámicamente y usar servicios provistos por otros módulos en el sistema.
• La habilidad de instalar, modificar y desinstalar módulos on fly.
• Puede usar spring dentro y entre los modulos.
• Un modelo de programación simple y familiar para los desarrolladores de aplicaciones empresariales.
Spring Dynamic Modules 1.0 soporta JDK 1.4 (y superiores) y OSGi R4 (y superiores). Los paquetes desplegados para usar con Spring Dynamic Modules deben especificar "Bundle-ManifestVersion: 2" en el manifest (OSGi R4). Además soporta Equinox 3.2.x, Felix 1.0.3+ y Knopflerfish 2.1.x .
Dejo links:
- Spring-DM - http://www.springframework.org/osgi
- Spring - Osgi http://www.springframework.org/osgi/specification
- OSGi™ - http://www.osgi.org/Main/HomePage
- Eclipse IDE – http://eclipse.org
- Maven - http://maven.apache.org/
- Eclipse Equinox - http://www.eclipse.org/equinox/
- Ejemplos: http://www.springframework.org/osgi/sim ... ice-sample , test que prueba la integracion spring + osgi