Summary
Introductions
Felix and More:
    - Felix Framework
    - Apache Felix Karaf
    - Apache Felix WebConsole
    - D...
OSGi (general)


A dynamic module system
        for Java
OSGi (general)
1999 - OSGi Alliance founded, JSR 8
2000 - R1 published
2003 - Eclipse choose OSGi for the plugin
       ar...
OSGi
OSGi

       Building with
       components
OSGi
OSGi



Communicating with
    services
OSGi (general)
                                                                                                           ...
Apache Felix

• Implement the OSGi specifications
• A home for many OSGi related
  extensions
Apache Felix

 • Implement the OSGi specifications
  • A home for many OSGi related
    extensions
                    Pref...
Apache Felix - Framework
Apache Felix Karaf
Hot Deployment           Dynamic Configuration
Logging System           Provisioning
Powerful Shell Cons...
Apache Felix Karaf
Works out-of-the-box with Felix and Equinox


OSGi platform for any application (web, enterprise, deskt...
Apache Felix Web Management Console
Dependency Injection Frameworks

 bundleContext.getService
           (..)
                                               ...
Dependency Injection Frameworks


OSGi Declarative Service Specification                        Apache Felix SCR



       ...
Dependency Injection Frameworks


  Blueprint, dependency injection
             a-la-Spring




    Apache Geronimo Bluep...
Deployment



   !"#$"%&%'()   !"#$%&'(


   !"#$"%&%'(*   !"#$%&')


   !"#$"%&%'(!   !"#$%&'*
Deployment



   !"#$"%&%'()                !"#$%&'(


   !"#$"%&%'(*   !"#$%&'"()   !"#$%&')


   !"#$"%&%'(!            ...
Keeping the history



                                 now
   !"#$"%&%'()        !"#$%&'(


   !"#$"%&%'(*        !"#$%&'...
Keeping the history
                             last year
            !"#$"%&%'()   +,-.&'()
                            ...
Topology

                                         !"#$%!
                                     0"&"$%0%&!.
               ...
Deployment Repository


',*-&'(    )&*(+"%(                 !"#$"%&%'(
              2       1"#$"%&%'/0   !"#$"%&%'()
   ...
Questions?
Felix And More: OSGi @ Apache
Felix And More: OSGi @ Apache
Upcoming SlideShare
Loading in...5
×

Felix And More: OSGi @ Apache

3,003

Published on

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 Sijpt

Published in: Technology, Education
0 Comments
5 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
3,003
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
106
Comments
0
Likes
5
Embeds 0
No embeds

No notes for slide

Felix And More: OSGi @ Apache

  1. 1. Summary Introductions Felix and More: - Felix Framework - Apache Felix Karaf - Apache Felix WebConsole - Dependency Injection Frameworks - Apache Ace Open Discussion
  2. 2. OSGi (general) A dynamic module system for Java
  3. 3. 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
  4. 4. OSGi
  5. 5. OSGi Building with components
  6. 6. OSGi
  7. 7. OSGi Communicating with services
  8. 8. OSGi (general) )$*+"&$ :6< 1(6'/ B'/3? =)>*&?- =)>*&?- =)>*&?- )?/ )?/ )?/ ;).9*/ ;).9*/ ;).9*/ ;).9*/ &.?("** !"#$%&'&($ &.?("**/9 ;).9*/ ;).9*/ ;).9*/ 1/'#&,/ ?("'( ?("'( ?("'@.< :&3/$,8,*/ '/?6*#/9 ",@#/ +69)*/ 1/,)'&(8 /.9 ).&.?("** ?(6==&.< ?(6= 012&$3'"4/56'7 ).&.?("**/9 !"#"$%&'()"*$+",-&./ ;).9*/ ;).9*/ ;).9*/ ;).9*/ ,-./($ &4=6'(? &4=6'(? /A=6'(? /A=6'(? /A=6'(? /A=6'(? 6'<C"=",-/C)@*$DCE 6'<C"=",-/C9>$DCH 6'<C"=",-/C*6<$FCG 6'<C"=",-/C)@*$DCD
  9. 9. Apache Felix • Implement the OSGi specifications • A home for many OSGi related extensions
  10. 10. Apache Felix • Implement the OSGi specifications • A home for many OSGi related extensions Preferences iPOJO Shell, TUI ConfigurationAdmin Web Console UPnP EventAdmin Sigil HTTP Maven OBR, OSGi, SCR Karaf FileInstall Gogo Service Component Runtime DependencyManager Remote Shell
  11. 11. Apache Felix - Framework
  12. 12. Apache Felix Karaf Hot Deployment Dynamic Configuration Logging System Provisioning Powerful Shell Console Remote Access Security Framework Managing Multiple Instances
  13. 13. Apache Felix Karaf Works out-of-the-box with Felix and Equinox OSGi platform for any application (web, enterprise, desktop) (almost) Complete PDF manual available in Karaf 1.1.0 Base platform of ServiceMix 4
  14. 14. Apache Felix Web Management Console
  15. 15. Dependency Injection Frameworks bundleContext.getService (..) tracking services ? ServiceListener ServiceTracker
  16. 16. 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
  17. 17. Dependency Injection Frameworks Blueprint, dependency injection a-la-Spring Apache Geronimo Blueprint (may change in the future...)
  18. 18. Deployment !"#$"%&%'() !"#$%&'( !"#$"%&%'(* !"#$%&') !"#$"%&%'(! !"#$%&'*
  19. 19. Deployment !"#$"%&%'() !"#$%&'( !"#$"%&%'(* !"#$%&'"() !"#$%&') !"#$"%&%'(! !"#$%&'*
  20. 20. Keeping the history now !"#$"%&%'() !"#$%&'( !"#$"%&%'(* !"#$%&') !"#$"%&%'(! !"#$%&'*
  21. 21. Keeping the history last year !"#$"%&%'() +,-.&'() last month !"#$"%&%'() !"#$"%&%'(* +,-.&'() last week !"#$"%&%'() !"#$"%&%'(* !"#$%&'( +,-.&'(! +,-.&'(* now !"#$"%&%'() !"#$%&'( !"#$"%&%'(* !"#$%&') +,-.&'(! !"#$"%&%'(* !"#$%&') !"#$"%&%'(! !"#$%&'* !"#$"%&%'(! !"#$%&'*
  22. 22. Topology !"#$%! 0"&"$%0%&!. "$%&! !"#$%! /2,%&! *#(+,-,(&,&$. 0"&"$%0%&!. &%!'(#) -%#+%# "$%&! !"#$%! 0"&"$%0%&!. "$%&! /(0*(&%&!. #%*(-,!(#1
  23. 23. Deployment Repository ',*-&'( )&*(+"%( !"#$"%&%'( 2 1"#$"%&%'/0 !"#$"%&%'() 3 1"#$"%&%'/0 !"#$"%&%'() !"#$"%&%'(! .,*-&'/0 4 1"#$"%&%'/0 !"#$"%&%'(! !"#$"%&%'(* 5 1"#$"%&%'/1 !"#$"%&%'(* 2 1"#$"%&%'/6 !"#$"%&%'(* .,*-&'/6 3 1"#$"%&%'/0 !"#$"%&%'() !"#$"%&%'(*
  24. 24. Questions?
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×