Top Banner
Enforcing modularity of JasForge using OSGI | © 2011 by K. DJAAFAR ; made available under the EPL v1.0 Part 8: Enforcing modularity of JasForge using OSGI and Futures Evolutions March 2011 Santa Clara Karim DJAAFAR CO of Jasmine Conseil
12

Part 8 - Enforcing modularity of JasForge using OSGI and Futures Evolutions

May 13, 2015

Download

Technology

JASMINE CONSEIL

Part 8 : Enforcing modularity of JasForge using OSGI and Futures Evolutions
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Part 8 - Enforcing modularity of JasForge using OSGI and Futures Evolutions

Enforcing modularity of JasForge using OSGI | © 2011 by K. DJAAFAR ; made available under the EPL v1.0

Part 8:Enforcing modularity of JasForge using OSGI and Futures Evolutions

March 2011

Santa Clara

Karim DJAAFAR

CO of Jasmine Conseil

Page 2: Part 8 - Enforcing modularity of JasForge using OSGI and Futures Evolutions

Enforcing modularity of JasForge using OSGI | © 2011 by K. DJAAFAR ; made available under the EPL v1.0

OSGI : BRIEF RECALL

Page 3: Part 8 - Enforcing modularity of JasForge using OSGI and Futures Evolutions

Enforcing modularity of JasForge using OSGI | © 2011 by K. DJAAFAR ; made available under the EPL v1.0

What is OSGi Specification ?• Delivered by the OSGi Alliance (Open group of

technology companies including Ericsson, IBM, Sun Microsystems, Nokia, Intel, BMW, and Philips)

Originally for embedded devices, set top boxes, network

• Architecture for modular application development in Java

Breaks applications into “modules” or “bundles”

• Can install, uninstall, start, and stop each bundle dynamically without restarting container

Multiple versions are supported

• Dependencies explicitly defined with clear boundaries

Page 4: Part 8 - Enforcing modularity of JasForge using OSGI and Futures Evolutions

Enforcing modularity of JasForge using OSGI | © 2011 by K. DJAAFAR ; made available under the EPL v1.0

“JAR Hell”

• JAR is a build-time and deploy-time concept, not run-time

Based on the ZIP file format

• No metadata to indicate dependencies• Multiple versions of JARs cannot be loaded• All “public” classes are public

Access modifiers are for packages, not JAR

Page 5: Part 8 - Enforcing modularity of JasForge using OSGI and Futures Evolutions

Enforcing modularity of JasForge using OSGI | © 2011 by K. DJAAFAR ; made available under the EPL v1.0 17

.MF

. . .

Java Classes, Static Files, ...

META-INF/MANIFEST

Export-Package. . .

Java Classes, Static Files, ...

META-INF/MANIFEST.MF

Import-Package. . .

. . .

Service

Client

Page 6: Part 8 - Enforcing modularity of JasForge using OSGI and Futures Evolutions

Enforcing modularity of JasForge using OSGI | © 2011 by K. DJAAFAR ; made available under the EPL v1.0

Bundle State Diagram

Page 7: Part 8 - Enforcing modularity of JasForge using OSGI and Futures Evolutions

Enforcing modularity of JasForge using OSGI | © 2011 by K. DJAAFAR ; made available under the EPL v1.0

OSGi open source containers

• Equinox (http://www.eclipse.org/equinox/) currently the reference implementation of the OSGi Release 4

specification

• Apache Felix (http://felix.apache.org/) Implemented in the Glassfish V3 Prelude JEE Server

• Spring DM (http://www.springsource.org/osgi) allows you to build SOA Spring applications that can be

deployed in an OSGi container

• Apache Karaf : http://karaf.apache.org/ A Newcomer ! a small OSGi based runtime which provides a

lightweight container onto which various components and applications

Page 8: Part 8 - Enforcing modularity of JasForge using OSGI and Futures Evolutions

Enforcing modularity of JasForge using OSGI | © 2011 by K. DJAAFAR ; made available under the EPL v1.0

JASFORGE© NEXT EVOLUTION

Page 9: Part 8 - Enforcing modularity of JasForge using OSGI and Futures Evolutions

Enforcing modularity of JasForge using OSGI | © 2011 by K. DJAAFAR ; made available under the EPL v1.0

• JasForge Agile Tools will be available as bundles in a OSGI container (Spring DM)

• jasForge projects will be “OSGI ready” thanks to use of Maven OSGI integration

• You will easily monitor your tools as services and enhance the monitoring of the overall infrastructure thanks to OSGI specification supported by light OSGI container like Spring Dynamic Modules for OSGI Service Platforms

• Tools will be available as service bundles

JasForge © OSGI compliant and Update Managment

Page 10: Part 8 - Enforcing modularity of JasForge using OSGI and Futures Evolutions

Enforcing modularity of JasForge using OSGI | © 2011 by K. DJAAFAR ; made available under the EPL v1.0

JasForge © OSGI compliant and Update Managment• This release will provide better separation of modules

and the ability to stop/start/remove/update OSGI compatible tools on JasForge OSGI compatible platform

• An update installer which facilitate the localization and update of your tools will be also available in our roadmap

Page 11: Part 8 - Enforcing modularity of JasForge using OSGI and Futures Evolutions

Enforcing modularity of JasForge using OSGI | © 2011 by K. DJAAFAR ; made available under the EPL v1.0

Conclusion JasForge is an Agile and Open Source Platform for managing all the life cycle of your Agile JEE project.

Based on Standard and Open Source tools Based on Standard and Open Source tools

Collaborative Platform for agile teamCollaborative Platform for agile team

Pluggable and extensible Software FactoryPluggable and extensible Software Factory

Cover all the life cycle of a JEE ProjectCover all the life cycle of a JEE Project

Page 12: Part 8 - Enforcing modularity of JasForge using OSGI and Futures Evolutions

Enforcing modularity of JasForge using OSGI | © 2011 by K. DJAAFAR ; made available under the EPL v1.012

JasForge: A Jasmine Conseil concept

http://www.jasmineconseil.com

Need More information ?

[email protected]

Download the Presentation:

http://moneclipse.com/products/download/pres/JasForgeEclipseSummit2010.ppt

Thank you for your Attention