Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
June 10-11, 2008 Berlin, Germany
OW2 JOnAS 5.0 Java EE
™
AS
An OSGi
™
Based Integration Platform
François Fornaciari & Wal...
2
•! Introduction to JOnAS 5.0
•! An integration platform based on OSGi
™
•! Modular platform
•! Adaptive platform
•! Flex...
3
•! Introduction to JOnAS 5.0
•! An integration platform based on OSGi
™
•! Modular platform
•! Adaptive platform
•! Flex...
4
•! Open Source (LGPL)
•! Hosted by the OW2 consortium
•! J2EE 1.4 Compliant (Sun Certification)
•! EasyBeans: EJB3
TM
li...
5
Bull
•! Leader
•! Support and services based on JOnAS
France Telecom
•! Intensive operational use of JOnAS
•! Clustering...
6
•! Major refactoring
•! OSGi
™
benefits
•! Modularity / Maintenability
•! Classpath consistency
•! Dynamic [re]configura...
7
•! Configuration
•! List of services to start
•! List of bundles to deploy at startup
•! OSGi framework implementation: ...
8
•! Specialized Java EE
™
administration tools (JMX)
•! JOnAS commands (start, stop, halt, admin, …)
•! Web console
•! Di...
9
•! Introduction to JOnAS 5.0
•! An integration platform based on OSGi
™
•! Modular platform
•! Adaptive platform
•! Flex...
10
Modular platform (1/3)
•! Bundle, bundle, bundle
•! All components and modules are OSGi
™
Bundles
•! Homogeneous and fl...
11
Modular platform (2/3)
•! Each module has it’s own lifecycle
•! Individual management
•! Better state control
•! Easy t...
12
Modular platform (3/3): JOnAS 5.0 architecture
13
•! Introduction to JOnAS 5.0
•! An integration platform based on OSGi
™
•! Modular platform
•! Adaptive platform
•! Fle...
14
Adaptive platform (1/5)
•! Deployment of new modules at runtime
•! Depends on applications’ needs
•! Dynamic deployment...
15
Adaptive platform (2/5):
Service on demand
•! Application declares the required JOnAS services
•! Add an entry to the M...
16
•! Automatic undeployment of the modules
automatically deployed and no longer needed
by applications
•! Checks performe...
17
Adaptive platform (4/5): Service update
•! Administrative action
•! jonas update -services [s1, s2, …]
•! Underlying pr...
18
•! The integration platform can dynamically react
to changes in the execution environment
•! On demand incremental serv...
19
•! Introduction to JOnAS 5.0
•! An integration platform based on OSGi
™
•! Modular platform
•! Adaptive platform
•! Fle...
20
•! Communications handled by the OSGi
™
service
layer
•! Loose-coupling between modules
•! Not dependent on a specific ...
21
•! Java EE
™
modules communicate with the OSGi
™
world
•! EJB
™
3.0 can use the BundleContext
•! Listen to OSGi™
events...
22
Flexible platform (3/4):
OSGi
™
Java EE
™
interactions
•! Why expose Java EE objects, like Stateless
Beans, as OSGi
™
s...
23
Flexible platform (4/4): Summary
•! JOnAS offers dynamic interactions between
OSGi
™
services and Java EE
™
application...
24
•! Introduction to JOnAS 5.0
•! An integration platform based on OSGi
™
•! Modular platform
•! Adaptive platform
•! Fle...
25
•! Service on demand will be available in a future release
•! Advanced diagnosis tool
•! Improve @OSGiResource to suppo...
26
27
•! Introduction to JOnAS 5.0
•! An integration platform based on OSGi
™
•! Modular platform
•! Adaptive platform
•! Fle...
28
J
M
X
R
E
G
I
S
T
R
Y
E
J
B
3
W
E
B
…
services applications
USB
Thermometer
E
A
R
M
A
I
L
M
Y
A
P
P
Demo: Service on de...
29
For more information
•! JOnAS
Documentation, download, mailing lists, …
http://jonas.ow2.org
•! Apache Felix
http://fel...
30
THANK YOU
Q & A
Upcoming SlideShare
Loading in …5
×

OW2 JOnAS 5.0 Java EE AS- An OSGi Based Integration Platform - François Fornaciari, Bull & Walter Rudametkin, University Joseph Fourier

444 views

Published on

OSGi Community Event 2008

Published in: Technology
  • Be the first to comment

  • Be the first to like this

OW2 JOnAS 5.0 Java EE AS- An OSGi Based Integration Platform - François Fornaciari, Bull & Walter Rudametkin, University Joseph Fourier

  1. 1. June 10-11, 2008 Berlin, Germany OW2 JOnAS 5.0 Java EE ™ AS An OSGi ™ Based Integration Platform François Fornaciari & Walter Rudametkin Bull SAS & UJF Grenoble Francois.Fornaciari@bull.net Walter.Rudametkin@imag.fr
  2. 2. 2 •! Introduction to JOnAS 5.0 •! An integration platform based on OSGi ™ •! Modular platform •! Adaptive platform •! Flexible platform •! Future work •! Demonstration Agenda
  3. 3. 3 •! Introduction to JOnAS 5.0 •! An integration platform based on OSGi ™ •! Modular platform •! Adaptive platform •! Flexible platform •! Future work •! Demonstration Agenda
  4. 4. 4 •! Open Source (LGPL) •! Hosted by the OW2 consortium •! J2EE 1.4 Compliant (Sun Certification) •! EasyBeans: EJB3 TM lightweight container •! Scalability and Availability •! Dynamic clustering (HTTP, RMI, DB), Failover Optimization mechanisms (pooling, caching, …) •! Enterprise Integration •! Multi-tier Infrastructure •! Apache, LDAP, DBMSs, JCA connectors to ERPs, mainframes •! Web Services, JMS •! Application versioning •! Administration (JMX , WS, EJB) •! Web console, script commands, JASMINe Java EETM Application Server
  5. 5. 5 Bull •! Leader •! Support and services based on JOnAS France Telecom •! Intensive operational use of JOnAS •! Clustering (validation, migration) UJF •! Collaboration on OSGi ™ Peking University, CVICSE •! Services architecture, Clustering, Web Services, Management INRIA •! Self Management UPM •! Clustering LIFL •! Administration/monitoring, deployment UNIFOR •! Clustering JOnAS development community
  6. 6. 6 •! Major refactoring •! OSGi ™ benefits •! Modularity / Maintenability •! Classpath consistency •! Dynamic [re]configuration •! Facilitates on demand services •! Self adaptability to application, user and environment constraints •! Access to the OSGi ™ world •! RFID, sensors, … JOnAS 5.0: OSGi™ based Architecture
  7. 7. 7 •! Configuration •! List of services to start •! List of bundles to deploy at startup •! OSGi framework implementation: Apache Felix •! At runtime •! Service dependencies managed by Apache iPOJO JOnAS 5.0: The basics
  8. 8. 8 •! Specialized Java EE ™ administration tools (JMX) •! JOnAS commands (start, stop, halt, admin, …) •! Web console •! Direct access to the OSGi ™ framework •! Recommended for knowledgeable users •! Felix shell and Felix GUI JOnAS 5.0: Management
  9. 9. 9 •! Introduction to JOnAS 5.0 •! An integration platform based on OSGi ™ •! Modular platform •! Adaptive platform •! Flexible platform •! Future work •! Demonstration Agenda
  10. 10. 10 Modular platform (1/3) •! Bundle, bundle, bundle •! All components and modules are OSGi ™ Bundles •! Homogeneous and flexible platform •! JOnAS technical services •! Java EE ™ applications (EasyBeans: EJB ™ 3.0) •! OSGi ™ services THEY’RE ALL BUNDLES!
  11. 11. 11 Modular platform (2/3) •! Each module has it’s own lifecycle •! Individual management •! Better state control •! Easy to replace service implementations •! Choose service implementation at any time •! Initially in the configuration •! At runtime •! Minimal repercussions on other modules
  12. 12. 12 Modular platform (3/3): JOnAS 5.0 architecture
  13. 13. 13 •! Introduction to JOnAS 5.0 •! An integration platform based on OSGi ™ •! Modular platform •! Adaptive platform •! Flexible platform •! Future work •! Demonstration Agenda
  14. 14. 14 Adaptive platform (1/5) •! Deployment of new modules at runtime •! Depends on applications’ needs •! Dynamic deployment using the OSGi ™ Bundle Repository (OBR) •! Local resources •! Remote resources •! Possible to specify preferences: •! Implementation (class) •! Vendor •! Version
  15. 15. 15 Adaptive platform (2/5): Service on demand •! Application declares the required JOnAS services •! Add an entry to the MANIFEST •! Before deploying the service, all requirements are automatically deployed •! Service preferences are defined in the JOnAS configuration (implementation, version, …) Manifest-Version: 1.0 …. Required-JOnAS-Services: mail
  16. 16. 16 •! Automatic undeployment of the modules automatically deployed and no longer needed by applications •! Checks performed when an application is undeployed •! Possible to define undeployment policy •! Always undeploy •! Never undeploy •! Fine grained policies Adaptive platform (3/5): Automated undeployment
  17. 17. 17 Adaptive platform (4/5): Service update •! Administrative action •! jonas update -services [s1, s2, …] •! Underlying process 1.! Stop the module •! Stop the applications that require it 2.! Lookup the latest version and deploy it from a local (or remote) repository 3.! Start only the new module •! Restart the stopped (dependent) applications
  18. 18. 18 •! The integration platform can dynamically react to changes in the execution environment •! On demand incremental service delivery •! Useful to reduce memory footprint and resource consumption Adaptive platform (5/5): Summary
  19. 19. 19 •! Introduction to JOnAS 5.0 •! An integration platform based on OSGi ™ •! Modular platform •! Adaptive platform •! Flexible platform •! Future work •! Demonstration Agenda
  20. 20. 20 •! Communications handled by the OSGi ™ service layer •! Loose-coupling between modules •! Not dependent on a specific implementation •! Allows dynamic OSGi ™ service replacement •! Ex: replace a simple log service by a persistent log service at runtime Flexible platform (1/4)
  21. 21. 21 •! Java EE ™ modules communicate with the OSGi ™ world •! EJB ™ 3.0 can use the BundleContext •! Listen to OSGi™ events (framework, bundle, service) •! Access to OSGi™ services Flexible platform (2/4): Java EE ™ OSGi ™ interactions /* * Bundle context that will be injected by the EZB container. */ @OSGiResource BundleContext bundleContext = null;
  22. 22. 22 Flexible platform (3/4): OSGi ™ Java EE ™ interactions •! Why expose Java EE objects, like Stateless Beans, as OSGi ™ services? •! Beans offer entry points to the Java EE ™ world •! Advantage: •! OSGi ™ applications can access Java EE ™ components transparently •! Benefit of persistence, transaction, security, … Under development…
  23. 23. 23 Flexible platform (4/4): Summary •! JOnAS offers dynamic interactions between OSGi ™ services and Java EE ™ applications •! Benefit from the best of both worlds •! OSGi applications use Java EE ™ features as any other OSGi service, and vice versa! •! Infinite combinations between applications •! Open large perspectives in many domains •! Embedded, multi-paradigm, edge, self-managed application servers
  24. 24. 24 •! Introduction to JOnAS 5.0 •! An integration platform based on OSGi ™ •! Modular platform •! Adaptive platform •! Flexible platform •! Future work •! Demonstration Agenda
  25. 25. 25 •! Service on demand will be available in a future release •! Advanced diagnosis tool •! Improve @OSGiResource to support OSGi service injections •! Smart calls to the OBR to optimize service deployment •! The dependencies resolver takes time (~4 s per resolution) •! How to implement an “obr undeploy” command? •! Should it also undeploy service requirements if no longer used •! Virtual service •! Service is loaded when a client uses it •! Update center •! How to add package dependencies at runtime? •! Ex: bytecode injection adds new requirements •! Plan to specify this issue in the next OSGi ™ specifications? Future work
  26. 26. 26
  27. 27. 27 •! Introduction to JOnAS 5.0 •! An integration platform based on OSGi ™ •! Modular platform •! Adaptive platform •! Flexible platform •! Future work •! Demonstration Agenda
  28. 28. 28 J M X R E G I S T R Y E J B 3 W E B … services applications USB Thermometer E A R M A I L M Y A P P Demo: Service on demand
  29. 29. 29 For more information •! JOnAS Documentation, download, mailing lists, … http://jonas.ow2.org •! Apache Felix http://felix.apache.org •! Java EE 5 http://java.sun.com/javaee/technologies/javaee5.jsp
  30. 30. 30 THANK YOU Q & A

×