1 Dive into Apache Geronimo 3.0 Xu Haihong Apache Geronimo PMC 2010-08-16.

Slides:



Advertisements
Similar presentations
Apache Maven: J2EE Front to Back Jesse McConnell -
Advertisements

Question examples. Session 1 Objectives Why certify? Positioning of the non-technical version What is Java? Key advantages of Java Java Applications vs.
Francisco Gonzalez Mario Rincon.  Apache CXF is an open source services framework.  CXF helps you build and develop services using frontend programming.
Web Services Web Services are the basic fundamental building blocks of invoking features that can be accessed by an application program. The accessibility.
G O B E Y O N D C O N V E N T I O N WORF: Developing DB2 UDB based Web Services on a Websphere Application Server Kris Van Thillo, ABIS Training & Consulting.
OSGi as a Framework for Building a Product Line: Experience and Best Practices Ruwan Linton & Afkham Azeez
Why OSGi matters for Enterprise Java Infrastructures
Apache Axis2 - OSGi Integration in WSO2 Carbon Platform
Application Servers What is it? General A set of software frameworks, components, utilities, functionality that enables you to develop and deliver n-tiered.
Indianapolis Java User Group JSR-168 Portal Presentation Introduction: Kurt Desserich.
1 Build a Web Application on J2EE. 2 J2EE Scenario Client – Web Server – EIS Resources Client – Web Server – EIS Resources Client – Application Server.
E-business Architecture.NET vs J2EE Judith Molka-Danielsen Feb.27, 2004.
Spring Dynamic Modules. Startlocation: Documentation: /1.2.1/reference/html/
Apache Jakarta Tomcat Suh, Junho. Road Map Tomcat Overview Tomcat Overview History History What is Tomcat? What is Tomcat? Servlet Container.
Understanding and Managing WebSphere V5
Emmanuel Cecchet et al.  Performance Scalability of J2EE application servers.  Test effect of: ◦ Application Implementation Methods ◦ Container Design.
Creation of hybrid portlet application for file download using IBM Worklight and IBM Rational Application Developer v9 Gaurav Bhattacharjee Lakshmi Priya.
Spring Roo CS476 Aleksey Bukin Peter Lew. What is Roo? Productivity tool Allows for easy creation of Enterprise Java applications Runs alongside existing.
Applets & Servlets.
OSGi.
Gemini – Shaping the Future of Enterprise Java Mike Keith Glyn Normington
J2EE /.NET Liz Farricker Whitney Mayoras Patrick Bailey.
CaGrid 2.0 December What is caGrid 2.0??? Provides a patch for caGrid 1.x to support SHA2 OSGi implementation of WSRF on the new technical stack.
How to Deploy, Monitor and Manage Middle-Tier Applications Lars Ewe, Principal Product Manager Valerie K. Kane, Group Manager Oracle Corporation Session.
Modern Software Technologies Java™, J2EE™, JSP™, JDBC™ by Radoslav Tr. Ivanov
Introduction to J2EE Architecture Portions by Kunal Mehta.
|Tecnologie Web L-A Anno Accademico Laboratorio di Tecnologie Web Introduzione ad Eclipse e Tomcat
Web Applications - Basics. Introduction to Web Web features Clent/Server HyperText Transfer Protocol HyperText Markup Language URL addresses Web server.
Enterprise Java v120131Intro to JavaEE1 Java EE 5 TM Introduction.
Opus College - overview. OpusCollege - background First project: ICT Capacity Building Mozambican Higher Education Institutions Partners: RUG Groningen,
CHEF II / Sakai Architecture. CHEF II Changes uPortal replaces Jetspeed –jsr 168 portlet, servlet compliant Spring replaces Turbine component framework.
Spring Framework. Spring Overview Spring is an open source layered Java/J2EE application framework Created by Rod Johnson Based on book “Expert one-on-one.
JBoss Overview J2EE Sig Presenter: Steve Davidson Stephen Davidson & Associates, INC.
Deployment with Karaf and ACE
Introduction to Web Dimitar Nenchev Ivan Nakov
1 Apache TomEE // JavaEE Web Profile on Tomcat Jonathan #TomEE.
A Presentation By V AIBHAV S AHARAN Web-enHanced Information Management COMS E6125.
JSF Framework Java Server Faces Presented by Songkran Totiya (6/10/2014)
Introduction to the Java Stack Michael Youngstrom.
Team S07. Agenda Scope of project Global use case diagram Analysis use cases High Level design (Software Architecture) Prototype challenges faced and.
Spring Framework. About spring Spring is the most popular application development framework for enterprise Java. Millions of developers around the world.
Tu sca ny 1 The Tuscany Project in the Apache Incubator and The Service Component Architecture Jeremy Boynes Simon Nash 28 June 2006.
Introduction to Enterprise Technologies Presented by Kushan Athukorala.
Chính phủ điện tử TS. Phạm Văn Tính Khoa CNTT, ĐH Nông Lâm TP.HCM
Jonathan Gallimore | Tomitribe Cluster your application with JCache and CDI.
Kansas City Java User’s Group Jason W. Bedell July 12, 2006
Modern Programming Language. Web Container & Web Applications Web applications are server side applications The most essential requirement.
Java Programming: Advanced Topics 1 Enterprise JavaBeans Chapter 14.
ETICS All Hands meeting B ologna, October , 2006 WP4 Test and Metrics Plugin Framework (WP4) (WP4) Eva TAKACS.
Google Code Libraries Dima Ionut Daniel. Contents What is Google Code? LDAPBeans Object-ldap-mapping Ldap-ODM Bug4j jOOR Rapa jongo Conclusion Bibliography.
Building J2EE Applications Based on Design Patterns with Business Components for Java Olivier LE DIOURIS Principal Product Manager Oracle Corporation.
What is J2EE?  Java J2ee developers on top of this provide the various kinds of services that are essential to develop large scale, allocated, component.
1.Education Overview JAVA EE 6 Technologies
1 Copyright © 2007, Oracle. All rights reserved. Installing and Setting Up the Warehouse Builder Environment.
WebSphere Application Server Community Edition 3.0 Overview Innovation Without Disruption Bala Subramanian Vetrivel.
Apache Geronimo Open Source J2EE Application Server Getting up to speed with Apache Geronimo - Copyright 2005 Tom McQueeney 1 Getting up to speed with.
Apache TomEE Tomcat with a kick. Apache TomEE: Overview ● Java EE 6 Web Profile certification in progress ● Apache TomEE Includes support for: ● Servlet.
Project Cumulus Overview March 15, End Goal Unified Public & Private PaaS for GlassFish/Java EE Simplify deployment of Java EE Apps on top of.
Presentation Title Up to Three Lines Long Arial 28pt Name, 26pt Speaker Company, 18pt Misc. Info, 16pt Speaker logo centered below photo.
Joe Bohn Apache Aries and IBM Original slides created by Graham Charters for OSGi DevCon US 2010, March 22, 2010 with minor updates by Joe Bohn for BarCampRDU.
Graham Charters Apache Aries and IBM Apache Aries An Open Source project for Enterprise OSGi Applications.
J2EE Platform Overview (Application Architecture)
Overall Architecture and Component Model
Introduction to J2EE Architecture
Unit 6-Chapter 2 Struts.
Enterprise Java Bean. Overview of EJB View of EJB Conversation Roles in EJB, Types of Enterprise Beans Lifecycle of Beans Developing Applications using.
Web-Services-based Systems Architecture, Design and Implementation
ESIS Consulting LLC (C) ESIS Consulting LLC. All rights reserved
Presentation transcript:

1 Dive into Apache Geronimo 3.0 Xu Haihong Apache Geronimo PMC

2 Agenda Apache Geronimo History Apache Geronimo Architecture Apache Geronimo 3.0 New Features Apache Geronimo Outlook Q&A

3 What Is Apache Geronimo [Don't] think of Geronimo as just another J2EE server but as the start of a system framework that can be used to build a whole variety of tailored infrastructure services. Jeremy Boynes, principal founder of Gluecode Software

4 Apache Geronimo History August 2003  Apache Geronimo Project formed  V1.0-M5 released, J2EE 1.4 certification Oct 2005 …  … Dec 2009  V2.2 Released Jun 2007  V2.0-M6 released, Java EE 5 certification …  … Feb 2008  V2.1 Released  V 3.0 Web Profile M1 Released Jun 2010  V 3.0 Web Profile Ongoing  3.* Full Profile

5 Apache Geronimo Status 2.1.* Branch –Java EE 5 Certified –Apache Geronimo * Branch –Java EE 5 Certified –Apache Geronimo Trunk –Java EE 6 Certified is ongoing ! –Apache Geronimo 3.0-SNAPSHOT (Under active development)

6 Apache Geronimo Admin Console

7 Apache Geronimo Console

8 Agenda Apache Geronimo History Apache Geronimo Architecture Apache Geronimo 3.0 –Architecture –New features Apache Geronimo Outlook Q&A

9 Geronimo Architecture Overview

10 Geronimo GBean Architecture What is GBean ? –A block ? –A bond ? Technically speaking –A Simple Java Class May implement some lifecycle interfaces Declare attributes/methods/references –Managed by Geronimo kernel ( IOC Container ) Geronimo Kernel vs Spring Container

11 GBean Use Scenario : Adapter Control the third-party components’ lifecycles Configure and initialize third-party components ……

12 Integration GBean Sample public class HostGBean extends … implements … { private final Host host; private final EngineGBean engine; public HostGBean(……) { host = (Host)Class.forName(className).newInstance(); …… } public void doStart() { engine.addHost(host); } public void doStop() { engine.removeHost(host); } org.apache.geronimo.tomcat.HostGBean

13 GBean Use Scenario : Service One GBean could expose some services, and other GBeans could take advantage of them.

14 Service GBean Sample org.apache.geronimo.tomcat.deployment. TomcatModuleBuilder public WebServiceBuilder webServiceBuilder ) { …… } public void addGBeans( …… ) { …… serviceBuilder.configurePOJO(servletData, servletName, module, servletClassName, moduleContext)) …… }

15 Agenda Apache Geronimo History Apache Geronimo Architecture Apache Geronimo 3.0 New features –Java EE 6 Support –OSGi Enablement –EBA Support Apache Geronimo Outlook Q&A

16 Java EE 6 Support Java EE 6 Spec was finally released in Dec 2009 Major components –Servlet 3.0 -> Tomcat 7.0 / Jetty 8.0 –JSP 2.2 -> Jasper 7.0 –EJB 3.1 -> OpenEJB 3.2.* –JAX-WS 2.2 -> Axis2 2.* / CXF 2.3.* –Web Beans -> OpenWebBeans 1.* –……

17 OSGi Enablement Geronimo 3.0 is totally based on OSGi –All Geronimo components are bundles running in the OSGi environment Start Order now: –Start OSGi runtime –Start Apache Karaf –Start Geronimo –All the user applications will be running in the OSGi environment as bundles –Support Apache Felix/Equinox OSGi runtime

18 What major changes bring by OSGi Classloader Architecture Changes –Past : Multi-parent Classloader One Classloader could have more than one parent classloaders –Now : OSGi Bundle Classloader One Bundle/Jar One Classloader

19 Multi-parent Classloader Architecture Application B Classloader System/Application Classloader Application A Classloader …… JPA ClassloaderJSF Classloader Application C Classloader WebService Classloader

20 Multi-parent Classloader Disadvantage –Complex Classloader Hierarchy Tree Classloader efficiency –Classloader related Exception ClassNotFoundException LinkageError ClassCastException

21 OSGi Bundle Classloader Tomcat Plugin Tomcat catalina Tomcat Shared JAX-WS API Tomcat Util Annotation API Servlet API JAXB API … Jasper

22 OSGi Bundle Classloader Import-Package/Export-Packages defines the mapping relation between different bundles, and improve the classloader efficiency Usually, the same class loading request is routed to the same bundle

23 EBA Support Enterprise Bundle Application –Programming Model for developing, assembling and deploying, as OSGi bundles, modular applications that exploit Java EE and OSGi technologies. Geronimo 3.0 integrates Apache Aries, and support EBA packages deployment.

24 Agenda Apache Geronimo History Apache Geronimo Architecture Apache Geronimo 3.0 New features Apache Geronimo Outlook Q&A

25 Apache Geronimo Outlook Integration Style Change –Use the third-components’ initial configuration style Take advantages of more OSGi functions –Use OSGi for the underlying service provider, like JNDI etc. –Use blueprint to “replace” GBean Usability improvement –Plan to re-organize Geronimo Admin Console –Plan to add more pages for OSGi bundle management

26 Reference Apache Geronimo Apache Geronimo project resources

27 Q&A

28 Thank you !