felix and more: osgi @ apache
DESCRIPTION
Short overview of some OSGi open source projects developed in the Apache Software Foundation: Apache Felix (and its subprojects) and Apache Ace. Presented at Devoxx 2009 in Antwerp, Belgium, by Filippo Diotalevi, Marcel Offermans and Angelo Van Der SijptTRANSCRIPT
![Page 1: Felix And More: OSGi @ Apache](https://reader033.vdocuments.mx/reader033/viewer/2022051513/5455144faf7959795d8b46b1/html5/thumbnails/1.jpg)
![Page 2: Felix And More: OSGi @ Apache](https://reader033.vdocuments.mx/reader033/viewer/2022051513/5455144faf7959795d8b46b1/html5/thumbnails/2.jpg)
SummaryIntroductions
Felix and More: - Felix Framework- Apache Felix Karaf- Apache Felix WebConsole- Dependency Injection Frameworks- Apache Ace
Open Discussion
![Page 3: Felix And More: OSGi @ Apache](https://reader033.vdocuments.mx/reader033/viewer/2022051513/5455144faf7959795d8b46b1/html5/thumbnails/3.jpg)
OSGi (general)
A dynamic module system for Java
![Page 4: Felix And More: OSGi @ Apache](https://reader033.vdocuments.mx/reader033/viewer/2022051513/5455144faf7959795d8b46b1/html5/thumbnails/4.jpg)
OSGi (general)1999 - OSGi Alliance founded, JSR 8
2000 - R1 published
2003 - Eclipse choose OSGi for the plugin
architecture
2007 - R4.1 published (JSR 291)
2009 - R4.2 published
2010 - Enterprise OSGi
![Page 5: Felix And More: OSGi @ Apache](https://reader033.vdocuments.mx/reader033/viewer/2022051513/5455144faf7959795d8b46b1/html5/thumbnails/5.jpg)
OSGi
![Page 6: Felix And More: OSGi @ Apache](https://reader033.vdocuments.mx/reader033/viewer/2022051513/5455144faf7959795d8b46b1/html5/thumbnails/6.jpg)
OSGi
Building with components
![Page 7: Felix And More: OSGi @ Apache](https://reader033.vdocuments.mx/reader033/viewer/2022051513/5455144faf7959795d8b46b1/html5/thumbnails/7.jpg)
OSGi
![Page 8: Felix And More: OSGi @ Apache](https://reader033.vdocuments.mx/reader033/viewer/2022051513/5455144faf7959795d8b46b1/html5/thumbnails/8.jpg)
OSGi
Communicating with services
![Page 9: Felix And More: OSGi @ Apache](https://reader033.vdocuments.mx/reader033/viewer/2022051513/5455144faf7959795d8b46b1/html5/thumbnails/9.jpg)
OSGi (general)
!"#$%&'&($
!"#"$%&'()"*$+",-&./
012&$3'"4/56'7
1/,)'&(8
+69)*/
:&3/$,8,*/
1/'#&,/;).9*/ ;).9*/ ;).9*/
)$*+"&$
:6< 1(6'/
=)>*&?- )?/)?/
=)>*&?-
?("'(
/.9
&.?("**/9&.?("**
?("'@.<?("'(
?(6==&.< ?(6=
",@#/'/?6*#/9
).&.?("**/9
).&.?("**
,-./($;).9*/ ;).9*/ ;).9*/ ;).9*/
/A=6'(?
&4=6'(?
/A=6'(?
&4=6'(?
/A=6'(?
/A=6'(?
B'/3?
=)>*&?-)?/
6'<C"=",-/C)@*$DCE
6'<C"=",-/C)@*$DCD6'<C"=",-/C*6<$FCG
6'<C"=",-/C9>$DCH
;).9*/ ;).9*/ ;).9*/ ;).9*/
![Page 10: Felix And More: OSGi @ Apache](https://reader033.vdocuments.mx/reader033/viewer/2022051513/5455144faf7959795d8b46b1/html5/thumbnails/10.jpg)
Apache Felix
•Implement the OSGi specifications•A home for many OSGi related
extensions
![Page 11: Felix And More: OSGi @ Apache](https://reader033.vdocuments.mx/reader033/viewer/2022051513/5455144faf7959795d8b46b1/html5/thumbnails/11.jpg)
Apache Felix
•Implement the OSGi specifications•A home for many OSGi related
extensions
Shell, TUI
Service Component RuntimeRemote Shell
Preferences
Maven OBR, OSGi, SCR
DependencyManager
iPOJO
GogoFileInstallKaraf
EventAdminConfigurationAdmin
Web ConsoleUPnP
Sigil HTTP
![Page 12: Felix And More: OSGi @ Apache](https://reader033.vdocuments.mx/reader033/viewer/2022051513/5455144faf7959795d8b46b1/html5/thumbnails/12.jpg)
Apache Felix - Framework
![Page 13: Felix And More: OSGi @ Apache](https://reader033.vdocuments.mx/reader033/viewer/2022051513/5455144faf7959795d8b46b1/html5/thumbnails/13.jpg)
Apache Felix Karaf
Hot Deployment
Logging System
Powerful Shell Console
Security Framework
Dynamic Configuration
Provisioning
Remote Access
Managing Multiple Instances
![Page 14: Felix And More: OSGi @ Apache](https://reader033.vdocuments.mx/reader033/viewer/2022051513/5455144faf7959795d8b46b1/html5/thumbnails/14.jpg)
Apache Felix Karaf
(almost) Complete PDF
manual available in Karaf 1.1.0
Base platform of ServiceMix 4
Works out-of-the-box with Felix and Equinox
OSGi platform for any application (web, enterprise, desktop)
![Page 15: Felix And More: OSGi @ Apache](https://reader033.vdocuments.mx/reader033/viewer/2022051513/5455144faf7959795d8b46b1/html5/thumbnails/15.jpg)
Apache Felix Web Management Console
![Page 16: Felix And More: OSGi @ Apache](https://reader033.vdocuments.mx/reader033/viewer/2022051513/5455144faf7959795d8b46b1/html5/thumbnails/16.jpg)
Dependency Injection Frameworks
?bundleContext.getService(..)
ServiceListener
ServiceTracker
tracking services
![Page 17: Felix And More: OSGi @ Apache](https://reader033.vdocuments.mx/reader033/viewer/2022051513/5455144faf7959795d8b46b1/html5/thumbnails/17.jpg)
Dependency Injection Frameworks
OSGi Declarative Service Specification Apache Felix SCR
Apache Felix IPOJO
Peaberry (Google Guice extension)http://code.google.com/p/peaberry/
Spring DM (Spring extension)http://www.springsource.org/osgi
![Page 18: Felix And More: OSGi @ Apache](https://reader033.vdocuments.mx/reader033/viewer/2022051513/5455144faf7959795d8b46b1/html5/thumbnails/18.jpg)
Dependency Injection Frameworks
Blueprint, dependency injectiona-la-Spring
Apache Geronimo Blueprint (may change in the future...)
![Page 19: Felix And More: OSGi @ Apache](https://reader033.vdocuments.mx/reader033/viewer/2022051513/5455144faf7959795d8b46b1/html5/thumbnails/19.jpg)
![Page 20: Felix And More: OSGi @ Apache](https://reader033.vdocuments.mx/reader033/viewer/2022051513/5455144faf7959795d8b46b1/html5/thumbnails/20.jpg)
Deployment
!"#$"%&%'()
!"#$"%&%'(*
!"#$"%&%'(!
!"#$%&'(
!"#$%&')
!"#$%&'*
![Page 21: Felix And More: OSGi @ Apache](https://reader033.vdocuments.mx/reader033/viewer/2022051513/5455144faf7959795d8b46b1/html5/thumbnails/21.jpg)
Deployment
!"#$"%&%'()
!"#$"%&%'(*
!"#$"%&%'(!
!"#$%&'(
!"#$%&')
!"#$%&'*
!"#$%&'"()
![Page 22: Felix And More: OSGi @ Apache](https://reader033.vdocuments.mx/reader033/viewer/2022051513/5455144faf7959795d8b46b1/html5/thumbnails/22.jpg)
Keeping the history
now
!"#$"%&%'()
!"#$"%&%'(*
!"#$"%&%'(!
!"#$%&'(
!"#$%&')
!"#$%&'*
![Page 23: Felix And More: OSGi @ Apache](https://reader033.vdocuments.mx/reader033/viewer/2022051513/5455144faf7959795d8b46b1/html5/thumbnails/23.jpg)
last year!"#$"%&%'()
!"#$"%&%'(*
+,-.&'()
+,-.&'(!
last month!"#$"%&%'()
!"#$"%&%'(*
+,-.&'()
+,-.&'(*
+,-.&'(!
last week
!"#$"%&%'()
!"#$"%&%'(*
!"#$"%&%'(!
!"#$%&'(
!"#$%&')
!"#$%&'*
Keeping the history
now
!"#$"%&%'()
!"#$"%&%'(*
!"#$"%&%'(!
!"#$%&'(
!"#$%&')
!"#$%&'*
![Page 24: Felix And More: OSGi @ Apache](https://reader033.vdocuments.mx/reader033/viewer/2022051513/5455144faf7959795d8b46b1/html5/thumbnails/24.jpg)
Topology
!"#$%!
!"#$%!
!"#$%!
&%!'(#)*#(+,-,(&,&$.
-%#+%#
/(0*(&%&!.#%*(-,!(#1
/2,%&!0"&"$%0%&!.
"$%&!
0"&"$%0%&!."$%&!
0"&"$%0%&!."$%&!
![Page 25: Felix And More: OSGi @ Apache](https://reader033.vdocuments.mx/reader033/viewer/2022051513/5455144faf7959795d8b46b1/html5/thumbnails/25.jpg)
Deployment Repository
!"#$"%&%'()&*(+"%(',*-&'(
.,*-&'/0
1"#$"%&%'/02
3
4
5
!"#$"%&%'()
1"#$"%&%'/0 !"#$"%&%'() !"#$"%&%'(!
1"#$"%&%'/0 !"#$"%&%'(! !"#$"%&%'(*
1"#$"%&%'/1 !"#$"%&%'(*
.,*-&'/61"#$"%&%'/62
3
!"#$"%&%'(*
1"#$"%&%'/0 !"#$"%&%'() !"#$"%&%'(*
![Page 26: Felix And More: OSGi @ Apache](https://reader033.vdocuments.mx/reader033/viewer/2022051513/5455144faf7959795d8b46b1/html5/thumbnails/26.jpg)
Questions?