SlideShare a Scribd company logo
Virgo 3.0
What's New!
Christopher Frost

SpringSource, a division of VMware

21st September 2011




                                                           OSGi Alliance Marketing © 2008-2010 . 1
                                                                                           Page
COPYRIGHT © 2008-2011 OSGi Alliance. All Rights Reserved
                                                           All Rights Reserved
Agenda

•   Extra Modular with Regions
•   Virgo 3.0 – What New
•   Snaps
•   Virgo & OSGi Tooling
•   Coming Soon
•   Questions




    Page 2   OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
Regions – Background

●
    Module granularity: Class, Bundle, ?
●
    Need higher level scoping construct than a bundle
●
    Simpler management of large applications
●
    [see Subsystems RFC 152 for more background]




    Page 3   OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
Regions – Scoping in Virgo

●
    Region scoping - Kernel Space vs User Space
●
    Application scoping
     ●
       PARs and scoped Plans
     ●
       Metadata rewriting for bundle/package scoping
     ●
       Service registry hooks for service scoping




    Page 4   OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
Regions – Composite Bundles &
Nested Frameworks
•   Idea to make a group of bundles like a single bundle
•   Explored by OSGi
•   Prototyped in Equinox
•   Exploited in Virgo 2.1.x
•   Difficulty standardising in a framework neutral way
•   Spec [RFC 138] replaced by framework hooks
•   Equinox prototype deprecated



    Page 5   OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
Regions – Framework Hooks

• Resolver hook, bundle find/event hooks [see R4.3 core
  spec for details]
• Similar to service registry find/event hooks which do the
  same for services
• Control the visibility of bundles, packages, generic
  capabilities




   Page 6   OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
Regions – Hook Usability

•   Service Find and Event hooks
•   Bundle Resolver, Find and Event hooks
•   Hard to ensure consistent behaviour across hooks
•   Need higher level abstraction
•   Region digraph




    Page 7   OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
Regions – Region Digraph

•   A directed graph of "regions"
•   A region is a group of bundles
•   Regions may be connected by directed arcs
•   Each directed arc has a filter which controls visibility:
     • bundles
     • packages
     • services
     • generic capabilities


    Page 8   OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
Regions – Region Digraph




  Page 9   OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
Regions – Region Digraph




  Page 10   OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
Regions – Region Digraph (cont.)


•   Developed as part of Virgo
•   Formal model in Z
•   Seen to be useful outside Virgo
•   Moved to Equinox
•   Used by Virgo 3.0
•   Likely to be used by Apache Aries




    Page 11   OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
Regions & Subsystems

• OSGi standard multi-bundle scoping mechanism
• Work in progress (Grahams Talk earlier), public draft soon
• Inspired by
   • Virgo regions & scopes
   • Apache Aries applications
   • Apache Felix Karaf features
   • Newton systems
   • Eclipse features
   • Deployment Admin deployment packages
• Virgo likely to implement subsystems in a future release
   Page 12   OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
Virgo 3.0 – Regions




  Page 13   OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
Virgo 3.0 – What's new
•   Snaps gets its first release
•   Servlet 3.0 with Tomcat 7.x
•   Gemini.Web, strict compliance to OSGi web container spec
•   Jetty version
•   Regions have replaced Nested Frameworks
•   New Shell based on Apache GoGo
•   Updated sample application, Greenpages
•   Spring 3.0.5.RELEASE & Equinox Indigo
•   Declarative Service & Log Service support
•   Lots of Bugfixes etc...

    Page 14   OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
Virgo 3.0 – Demo




Page 15   OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
Snaps – Modular Web Apps

•   Some features tidied up
•   Documentation written
•   Single sample app showing everything Snaps can do
•   All available in a Zip from the Virgo website




    Page 16   OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
Snaps – Basics

•   Lots of Snaps (Web Application Bundles)
•   Snaps have the hosts ServletContext
•   Uses a filter to dispatch requests from the host
•   Everything else is business as normal




    Page 17   OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
Snaps – Nested Context Paths




            /app/orders                                                          /app/billing

  Page 18   OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
Snaps – A filter for Snaps

• Still just web.xml
• Define the subpath for Snaps with a filter




   Page 19   OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
Snaps – Manifest

• Attaching Snaps to hosts




   Page 20   OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
Snaps – Taglibs

• JSP tag to look up slices & their properties




   Page 21   OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
Snaps – Host Properties

• Looking up resources & properties from the host




   Page 22   OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
Snaps – Demo




Page 23   OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
Virgo Tooling

• Donated to Eclipse Virgo and Libra
• Tooling - 1st milestone, lots still changing
• The Dependency on STS/Spring IDE is going
• Bundlor – Manifest generation tool
• To have a play, see http://wiki.eclipse.org/Virgo/Tooling




   Page 24   OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
Virgo Future

•   New Web Admin Console
•   P2 integration
•   Subsystems
•   Tooling
•   Cloud
•   ???




    Page 25   OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
Questions




Page 26   OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved

More Related Content

Similar to Virgo 3.0, OSGi middleware server from EclipseRT – Christopher Frost

Virgo 3.0 from OSGi Community Event 2011 at Darmstadt
Virgo 3.0 from OSGi Community Event 2011 at DarmstadtVirgo 3.0 from OSGi Community Event 2011 at Darmstadt
Virgo 3.0 from OSGi Community Event 2011 at Darmstadt
Christopher Frost
 
Getting started with OSGi using a 3D OSGi Robot sample application - Christia...
Getting started with OSGi using a 3D OSGi Robot sample application - Christia...Getting started with OSGi using a 3D OSGi Robot sample application - Christia...
Getting started with OSGi using a 3D OSGi Robot sample application - Christia...
mfrancis
 
Structuring software systems with OSGi - Ulf Fildebrandt
Structuring software systems with OSGi - Ulf FildebrandtStructuring software systems with OSGi - Ulf Fildebrandt
Structuring software systems with OSGi - Ulf Fildebrandt
mfrancis
 
µServices for the rest of us - karl pauls
µServices for the rest of us - karl paulsµServices for the rest of us - karl pauls
µServices for the rest of us - karl pauls
mfrancis
 
Technical Specification Overview - OSGi World Congress 2002 Workshop Intro - ...
Technical Specification Overview - OSGi World Congress 2002 Workshop Intro - ...Technical Specification Overview - OSGi World Congress 2002 Workshop Intro - ...
Technical Specification Overview - OSGi World Congress 2002 Workshop Intro - ...
mfrancis
 
How the OSGi Residential Specifications can help to build an ecosystem for sm...
How the OSGi Residential Specifications can help to build an ecosystem for sm...How the OSGi Residential Specifications can help to build an ecosystem for sm...
How the OSGi Residential Specifications can help to build an ecosystem for sm...
mfrancis
 
SAP Inside Track Singapore 2014
SAP Inside Track Singapore 2014SAP Inside Track Singapore 2014
SAP Inside Track Singapore 2014mharkus
 
OSGi Technology, Eclipse and Convergence - Jeff McAffer, IBM
OSGi Technology, Eclipse and Convergence - Jeff McAffer, IBMOSGi Technology, Eclipse and Convergence - Jeff McAffer, IBM
OSGi Technology, Eclipse and Convergence - Jeff McAffer, IBM
mfrancis
 
OSGi Architecture for Mobile Device Software - Peter Kriens, aQute
OSGi Architecture for Mobile Device Software - Peter Kriens, aQuteOSGi Architecture for Mobile Device Software - Peter Kriens, aQute
OSGi Architecture for Mobile Device Software - Peter Kriens, aQute
mfrancis
 
Ugf9796 weblogic for ebs and obiee
Ugf9796 weblogic for ebs and obieeUgf9796 weblogic for ebs and obiee
Ugf9796 weblogic for ebs and obieeBerry Clemens
 
Update OSGi Residential Expert Group
Update OSGi Residential Expert Group Update OSGi Residential Expert Group
Update OSGi Residential Expert Group OSGiUsers
 
IBM Z for the Digital Enterprise - Zowe overview
IBM Z for the Digital Enterprise - Zowe overviewIBM Z for the Digital Enterprise - Zowe overview
IBM Z for the Digital Enterprise - Zowe overview
DevOps for Enterprise Systems
 
Jetty Vs Tomcat
Jetty Vs TomcatJetty Vs Tomcat
Jetty Vs Tomcat
Tomoaki Sawada
 
Gemini WEB and Virgo
Gemini WEB and VirgoGemini WEB and Virgo
Gemini WEB and VirgoHristo Iliev
 
OSGi and JavaScript - Simon Kaegi
OSGi and JavaScript - Simon KaegiOSGi and JavaScript - Simon Kaegi
OSGi and JavaScript - Simon Kaegi
mfrancis
 
Is 12 Factor App Right About Logging
Is 12 Factor App Right About LoggingIs 12 Factor App Right About Logging
Is 12 Factor App Right About Logging
Phil Wilkins
 
JavaOne 2014 - Scalable JavaScript Applications with Project Nashorn [CON6423]
JavaOne 2014 - Scalable JavaScript Applications with Project Nashorn [CON6423]JavaOne 2014 - Scalable JavaScript Applications with Project Nashorn [CON6423]
JavaOne 2014 - Scalable JavaScript Applications with Project Nashorn [CON6423]
Leonardo Zanivan
 
A path to modularity with Eclipse Virgo
A path to modularity with Eclipse VirgoA path to modularity with Eclipse Virgo
A path to modularity with Eclipse Virgokatya_todorova
 
Serverless Java - Challenges and Triumphs
Serverless Java - Challenges and TriumphsServerless Java - Challenges and Triumphs
Serverless Java - Challenges and Triumphs
David Delabassee
 

Similar to Virgo 3.0, OSGi middleware server from EclipseRT – Christopher Frost (20)

Virgo 3.0 from OSGi Community Event 2011 at Darmstadt
Virgo 3.0 from OSGi Community Event 2011 at DarmstadtVirgo 3.0 from OSGi Community Event 2011 at Darmstadt
Virgo 3.0 from OSGi Community Event 2011 at Darmstadt
 
Getting started with OSGi using a 3D OSGi Robot sample application - Christia...
Getting started with OSGi using a 3D OSGi Robot sample application - Christia...Getting started with OSGi using a 3D OSGi Robot sample application - Christia...
Getting started with OSGi using a 3D OSGi Robot sample application - Christia...
 
Structuring software systems with OSGi - Ulf Fildebrandt
Structuring software systems with OSGi - Ulf FildebrandtStructuring software systems with OSGi - Ulf Fildebrandt
Structuring software systems with OSGi - Ulf Fildebrandt
 
µServices for the rest of us - karl pauls
µServices for the rest of us - karl paulsµServices for the rest of us - karl pauls
µServices for the rest of us - karl pauls
 
Technical Specification Overview - OSGi World Congress 2002 Workshop Intro - ...
Technical Specification Overview - OSGi World Congress 2002 Workshop Intro - ...Technical Specification Overview - OSGi World Congress 2002 Workshop Intro - ...
Technical Specification Overview - OSGi World Congress 2002 Workshop Intro - ...
 
How the OSGi Residential Specifications can help to build an ecosystem for sm...
How the OSGi Residential Specifications can help to build an ecosystem for sm...How the OSGi Residential Specifications can help to build an ecosystem for sm...
How the OSGi Residential Specifications can help to build an ecosystem for sm...
 
SAP Inside Track Singapore 2014
SAP Inside Track Singapore 2014SAP Inside Track Singapore 2014
SAP Inside Track Singapore 2014
 
OSGi Technology, Eclipse and Convergence - Jeff McAffer, IBM
OSGi Technology, Eclipse and Convergence - Jeff McAffer, IBMOSGi Technology, Eclipse and Convergence - Jeff McAffer, IBM
OSGi Technology, Eclipse and Convergence - Jeff McAffer, IBM
 
OSGi Architecture for Mobile Device Software - Peter Kriens, aQute
OSGi Architecture for Mobile Device Software - Peter Kriens, aQuteOSGi Architecture for Mobile Device Software - Peter Kriens, aQute
OSGi Architecture for Mobile Device Software - Peter Kriens, aQute
 
Ugf9796 weblogic for ebs and obiee
Ugf9796 weblogic for ebs and obieeUgf9796 weblogic for ebs and obiee
Ugf9796 weblogic for ebs and obiee
 
Update OSGi Residential Expert Group
Update OSGi Residential Expert Group Update OSGi Residential Expert Group
Update OSGi Residential Expert Group
 
IBM Z for the Digital Enterprise - Zowe overview
IBM Z for the Digital Enterprise - Zowe overviewIBM Z for the Digital Enterprise - Zowe overview
IBM Z for the Digital Enterprise - Zowe overview
 
XTech May 2008
XTech May 2008XTech May 2008
XTech May 2008
 
Jetty Vs Tomcat
Jetty Vs TomcatJetty Vs Tomcat
Jetty Vs Tomcat
 
Gemini WEB and Virgo
Gemini WEB and VirgoGemini WEB and Virgo
Gemini WEB and Virgo
 
OSGi and JavaScript - Simon Kaegi
OSGi and JavaScript - Simon KaegiOSGi and JavaScript - Simon Kaegi
OSGi and JavaScript - Simon Kaegi
 
Is 12 Factor App Right About Logging
Is 12 Factor App Right About LoggingIs 12 Factor App Right About Logging
Is 12 Factor App Right About Logging
 
JavaOne 2014 - Scalable JavaScript Applications with Project Nashorn [CON6423]
JavaOne 2014 - Scalable JavaScript Applications with Project Nashorn [CON6423]JavaOne 2014 - Scalable JavaScript Applications with Project Nashorn [CON6423]
JavaOne 2014 - Scalable JavaScript Applications with Project Nashorn [CON6423]
 
A path to modularity with Eclipse Virgo
A path to modularity with Eclipse VirgoA path to modularity with Eclipse Virgo
A path to modularity with Eclipse Virgo
 
Serverless Java - Challenges and Triumphs
Serverless Java - Challenges and TriumphsServerless Java - Challenges and Triumphs
Serverless Java - Challenges and Triumphs
 

More from mfrancis

Eclipse Modeling Framework and plain OSGi the easy way - Mark Hoffman (Data I...
Eclipse Modeling Framework and plain OSGi the easy way - Mark Hoffman (Data I...Eclipse Modeling Framework and plain OSGi the easy way - Mark Hoffman (Data I...
Eclipse Modeling Framework and plain OSGi the easy way - Mark Hoffman (Data I...
mfrancis
 
OSGi and Java 9+ - BJ Hargrave (IBM)
OSGi and Java 9+ - BJ Hargrave (IBM)OSGi and Java 9+ - BJ Hargrave (IBM)
OSGi and Java 9+ - BJ Hargrave (IBM)
mfrancis
 
Simplify Web UX Coding using OSGi Modularity Magic - Paul Fraser (A2Z Living)
Simplify Web UX Coding using OSGi Modularity Magic - Paul Fraser (A2Z Living)Simplify Web UX Coding using OSGi Modularity Magic - Paul Fraser (A2Z Living)
Simplify Web UX Coding using OSGi Modularity Magic - Paul Fraser (A2Z Living)
mfrancis
 
OSGi for the data centre - Connecting OSGi to Kubernetes - Frank Lyaruu
OSGi for the data centre - Connecting OSGi to Kubernetes - Frank LyaruuOSGi for the data centre - Connecting OSGi to Kubernetes - Frank Lyaruu
OSGi for the data centre - Connecting OSGi to Kubernetes - Frank Lyaruu
mfrancis
 
Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe...
Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe...Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe...
Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe...
mfrancis
 
OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So...
OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So...OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So...
OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So...
mfrancis
 
A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting...
A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting...A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting...
A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting...
mfrancis
 
OSGi Feature Model - Where Art Thou - David Bosschaert (Adobe)
OSGi Feature Model - Where Art Thou - David Bosschaert (Adobe)OSGi Feature Model - Where Art Thou - David Bosschaert (Adobe)
OSGi Feature Model - Where Art Thou - David Bosschaert (Adobe)
mfrancis
 
Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...
Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...
Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...
mfrancis
 
OSGi CDI Integration Specification - Ray Augé (Liferay)
OSGi CDI Integration Specification - Ray Augé (Liferay)OSGi CDI Integration Specification - Ray Augé (Liferay)
OSGi CDI Integration Specification - Ray Augé (Liferay)
mfrancis
 
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...
mfrancis
 
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
mfrancis
 
It Was Twenty Years Ago Today - Building an OSGi based Smart Home System - Ch...
It Was Twenty Years Ago Today - Building an OSGi based Smart Home System - Ch...It Was Twenty Years Ago Today - Building an OSGi based Smart Home System - Ch...
It Was Twenty Years Ago Today - Building an OSGi based Smart Home System - Ch...
mfrancis
 
Popular patterns revisited on OSGi - Christian Schneider (Adobe)
Popular patterns revisited on OSGi - Christian Schneider (Adobe)Popular patterns revisited on OSGi - Christian Schneider (Adobe)
Popular patterns revisited on OSGi - Christian Schneider (Adobe)
mfrancis
 
Integrating SLF4J and the new OSGi LogService 1.4 - BJ Hargrave (IBM)
Integrating SLF4J and the new OSGi LogService 1.4 - BJ Hargrave (IBM)Integrating SLF4J and the new OSGi LogService 1.4 - BJ Hargrave (IBM)
Integrating SLF4J and the new OSGi LogService 1.4 - BJ Hargrave (IBM)
mfrancis
 
OSG(a)i: because AI needs a runtime - Tim Verbelen (imec)
OSG(a)i: because AI needs a runtime - Tim Verbelen (imec)OSG(a)i: because AI needs a runtime - Tim Verbelen (imec)
OSG(a)i: because AI needs a runtime - Tim Verbelen (imec)
mfrancis
 
Flying to Jupiter with OSGi - Tony Walsh (ESA) & Hristo Indzhov (Telespazio V...
Flying to Jupiter with OSGi - Tony Walsh (ESA) & Hristo Indzhov (Telespazio V...Flying to Jupiter with OSGi - Tony Walsh (ESA) & Hristo Indzhov (Telespazio V...
Flying to Jupiter with OSGi - Tony Walsh (ESA) & Hristo Indzhov (Telespazio V...
mfrancis
 
MicroProfile, OSGi was meant for this - Ray Auge (Liferay)
MicroProfile, OSGi was meant for this - Ray Auge (Liferay)MicroProfile, OSGi was meant for this - Ray Auge (Liferay)
MicroProfile, OSGi was meant for this - Ray Auge (Liferay)
mfrancis
 
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
mfrancis
 
How to connect your OSGi application - Dirk Fauth (Bosch)
How to connect your OSGi application - Dirk Fauth (Bosch)How to connect your OSGi application - Dirk Fauth (Bosch)
How to connect your OSGi application - Dirk Fauth (Bosch)
mfrancis
 

More from mfrancis (20)

Eclipse Modeling Framework and plain OSGi the easy way - Mark Hoffman (Data I...
Eclipse Modeling Framework and plain OSGi the easy way - Mark Hoffman (Data I...Eclipse Modeling Framework and plain OSGi the easy way - Mark Hoffman (Data I...
Eclipse Modeling Framework and plain OSGi the easy way - Mark Hoffman (Data I...
 
OSGi and Java 9+ - BJ Hargrave (IBM)
OSGi and Java 9+ - BJ Hargrave (IBM)OSGi and Java 9+ - BJ Hargrave (IBM)
OSGi and Java 9+ - BJ Hargrave (IBM)
 
Simplify Web UX Coding using OSGi Modularity Magic - Paul Fraser (A2Z Living)
Simplify Web UX Coding using OSGi Modularity Magic - Paul Fraser (A2Z Living)Simplify Web UX Coding using OSGi Modularity Magic - Paul Fraser (A2Z Living)
Simplify Web UX Coding using OSGi Modularity Magic - Paul Fraser (A2Z Living)
 
OSGi for the data centre - Connecting OSGi to Kubernetes - Frank Lyaruu
OSGi for the data centre - Connecting OSGi to Kubernetes - Frank LyaruuOSGi for the data centre - Connecting OSGi to Kubernetes - Frank Lyaruu
OSGi for the data centre - Connecting OSGi to Kubernetes - Frank Lyaruu
 
Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe...
Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe...Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe...
Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe...
 
OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So...
OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So...OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So...
OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So...
 
A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting...
A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting...A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting...
A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting...
 
OSGi Feature Model - Where Art Thou - David Bosschaert (Adobe)
OSGi Feature Model - Where Art Thou - David Bosschaert (Adobe)OSGi Feature Model - Where Art Thou - David Bosschaert (Adobe)
OSGi Feature Model - Where Art Thou - David Bosschaert (Adobe)
 
Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...
Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...
Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...
 
OSGi CDI Integration Specification - Ray Augé (Liferay)
OSGi CDI Integration Specification - Ray Augé (Liferay)OSGi CDI Integration Specification - Ray Augé (Liferay)
OSGi CDI Integration Specification - Ray Augé (Liferay)
 
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...
 
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
 
It Was Twenty Years Ago Today - Building an OSGi based Smart Home System - Ch...
It Was Twenty Years Ago Today - Building an OSGi based Smart Home System - Ch...It Was Twenty Years Ago Today - Building an OSGi based Smart Home System - Ch...
It Was Twenty Years Ago Today - Building an OSGi based Smart Home System - Ch...
 
Popular patterns revisited on OSGi - Christian Schneider (Adobe)
Popular patterns revisited on OSGi - Christian Schneider (Adobe)Popular patterns revisited on OSGi - Christian Schneider (Adobe)
Popular patterns revisited on OSGi - Christian Schneider (Adobe)
 
Integrating SLF4J and the new OSGi LogService 1.4 - BJ Hargrave (IBM)
Integrating SLF4J and the new OSGi LogService 1.4 - BJ Hargrave (IBM)Integrating SLF4J and the new OSGi LogService 1.4 - BJ Hargrave (IBM)
Integrating SLF4J and the new OSGi LogService 1.4 - BJ Hargrave (IBM)
 
OSG(a)i: because AI needs a runtime - Tim Verbelen (imec)
OSG(a)i: because AI needs a runtime - Tim Verbelen (imec)OSG(a)i: because AI needs a runtime - Tim Verbelen (imec)
OSG(a)i: because AI needs a runtime - Tim Verbelen (imec)
 
Flying to Jupiter with OSGi - Tony Walsh (ESA) & Hristo Indzhov (Telespazio V...
Flying to Jupiter with OSGi - Tony Walsh (ESA) & Hristo Indzhov (Telespazio V...Flying to Jupiter with OSGi - Tony Walsh (ESA) & Hristo Indzhov (Telespazio V...
Flying to Jupiter with OSGi - Tony Walsh (ESA) & Hristo Indzhov (Telespazio V...
 
MicroProfile, OSGi was meant for this - Ray Auge (Liferay)
MicroProfile, OSGi was meant for this - Ray Auge (Liferay)MicroProfile, OSGi was meant for this - Ray Auge (Liferay)
MicroProfile, OSGi was meant for this - Ray Auge (Liferay)
 
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
 
How to connect your OSGi application - Dirk Fauth (Bosch)
How to connect your OSGi application - Dirk Fauth (Bosch)How to connect your OSGi application - Dirk Fauth (Bosch)
How to connect your OSGi application - Dirk Fauth (Bosch)
 

Recently uploaded

Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
ThousandEyes
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Thierry Lestable
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
Jemma Hussein Allen
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
Elena Simperl
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Product School
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
Product School
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
UiPathCommunity
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
Product School
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
Safe Software
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
DianaGray10
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
BookNet Canada
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
Dorra BARTAGUIZ
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
g2nightmarescribd
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance
 

Recently uploaded (20)

Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
 

Virgo 3.0, OSGi middleware server from EclipseRT – Christopher Frost

  • 1. Virgo 3.0 What's New! Christopher Frost SpringSource, a division of VMware 21st September 2011 OSGi Alliance Marketing © 2008-2010 . 1 Page COPYRIGHT © 2008-2011 OSGi Alliance. All Rights Reserved All Rights Reserved
  • 2. Agenda • Extra Modular with Regions • Virgo 3.0 – What New • Snaps • Virgo & OSGi Tooling • Coming Soon • Questions Page 2 OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
  • 3. Regions – Background ● Module granularity: Class, Bundle, ? ● Need higher level scoping construct than a bundle ● Simpler management of large applications ● [see Subsystems RFC 152 for more background] Page 3 OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
  • 4. Regions – Scoping in Virgo ● Region scoping - Kernel Space vs User Space ● Application scoping ● PARs and scoped Plans ● Metadata rewriting for bundle/package scoping ● Service registry hooks for service scoping Page 4 OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
  • 5. Regions – Composite Bundles & Nested Frameworks • Idea to make a group of bundles like a single bundle • Explored by OSGi • Prototyped in Equinox • Exploited in Virgo 2.1.x • Difficulty standardising in a framework neutral way • Spec [RFC 138] replaced by framework hooks • Equinox prototype deprecated Page 5 OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
  • 6. Regions – Framework Hooks • Resolver hook, bundle find/event hooks [see R4.3 core spec for details] • Similar to service registry find/event hooks which do the same for services • Control the visibility of bundles, packages, generic capabilities Page 6 OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
  • 7. Regions – Hook Usability • Service Find and Event hooks • Bundle Resolver, Find and Event hooks • Hard to ensure consistent behaviour across hooks • Need higher level abstraction • Region digraph Page 7 OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
  • 8. Regions – Region Digraph • A directed graph of "regions" • A region is a group of bundles • Regions may be connected by directed arcs • Each directed arc has a filter which controls visibility: • bundles • packages • services • generic capabilities Page 8 OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
  • 9. Regions – Region Digraph Page 9 OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
  • 10. Regions – Region Digraph Page 10 OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
  • 11. Regions – Region Digraph (cont.) • Developed as part of Virgo • Formal model in Z • Seen to be useful outside Virgo • Moved to Equinox • Used by Virgo 3.0 • Likely to be used by Apache Aries Page 11 OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
  • 12. Regions & Subsystems • OSGi standard multi-bundle scoping mechanism • Work in progress (Grahams Talk earlier), public draft soon • Inspired by • Virgo regions & scopes • Apache Aries applications • Apache Felix Karaf features • Newton systems • Eclipse features • Deployment Admin deployment packages • Virgo likely to implement subsystems in a future release Page 12 OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
  • 13. Virgo 3.0 – Regions Page 13 OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
  • 14. Virgo 3.0 – What's new • Snaps gets its first release • Servlet 3.0 with Tomcat 7.x • Gemini.Web, strict compliance to OSGi web container spec • Jetty version • Regions have replaced Nested Frameworks • New Shell based on Apache GoGo • Updated sample application, Greenpages • Spring 3.0.5.RELEASE & Equinox Indigo • Declarative Service & Log Service support • Lots of Bugfixes etc... Page 14 OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
  • 15. Virgo 3.0 – Demo Page 15 OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
  • 16. Snaps – Modular Web Apps • Some features tidied up • Documentation written • Single sample app showing everything Snaps can do • All available in a Zip from the Virgo website Page 16 OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
  • 17. Snaps – Basics • Lots of Snaps (Web Application Bundles) • Snaps have the hosts ServletContext • Uses a filter to dispatch requests from the host • Everything else is business as normal Page 17 OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
  • 18. Snaps – Nested Context Paths /app/orders /app/billing Page 18 OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
  • 19. Snaps – A filter for Snaps • Still just web.xml • Define the subpath for Snaps with a filter Page 19 OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
  • 20. Snaps – Manifest • Attaching Snaps to hosts Page 20 OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
  • 21. Snaps – Taglibs • JSP tag to look up slices & their properties Page 21 OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
  • 22. Snaps – Host Properties • Looking up resources & properties from the host Page 22 OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
  • 23. Snaps – Demo Page 23 OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
  • 24. Virgo Tooling • Donated to Eclipse Virgo and Libra • Tooling - 1st milestone, lots still changing • The Dependency on STS/Spring IDE is going • Bundlor – Manifest generation tool • To have a play, see http://wiki.eclipse.org/Virgo/Tooling Page 24 OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
  • 25. Virgo Future • New Web Admin Console • P2 integration • Subsystems • Tooling • Cloud • ??? Page 25 OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
  • 26. Questions Page 26 OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved