33
1 Geronimo Web 2.0 Apache Geronimo Startrampe für Web-2.0-Anwendungen Frank Pientka, März 2009, Dortmund comes to you Apache Geronimo = Startrampe für Web 2.0 Geronimo Web 2.0 Page 2 Pientka, Impaq AG, Apache Geronimo Vorstellung des Referenten: Frank Pientka Dipl.-Informatiker, Senior Consultant bei der IMPAQ AG in Dortmund Veröffentlichungen und Vorträge zu Applikations- und Portalservern

Pientka Geronimo v0.3 1 - Startseite - Regionalgruppe …rg-dortmund.gi.de/fileadmin/gliederungen/rg-dortmund/archiv_alt/... · Benchmark (SPECjAppServer2004) Statistiken ... Liferay

  • Upload
    builien

  • View
    217

  • Download
    1

Embed Size (px)

Citation preview

1

Geronimo

Web 2.0

Apache GeronimoStartrampe für

Web-2.0-Anwendungen

Frank Pientka, März 2009, Dortmundcomes to you

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 2 Pientka, Impaq AG, Apache Geronimo

Vorstellung des Referenten: Frank Pientka

Dipl.-Informatiker,Senior Consultant

bei der IMPAQ AG in DortmundVeröffentlichungen und Vorträge zuApplikations- und Portalservern

2

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 3 Pientka, Impaq AG, Apache Geronimo

IMPAQ Gruppe – Shortfacts

Los AngelesLondon Posen

Warschau

Hamburg

Dortmund

Frankfurt

Headquarter Zürich München

�1992 gegründet

�~ 400 Mitarbeiter

�9 Standorte weltweit

�Nearshore Services Center in Polen

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 4 Pientka, Impaq AG, Apache Geronimo

Agenda

1 Noch ein Applikationsserver?

2 Apache Geronimo: Überblick

3 Erster Eindruck

4 Apache SOA-Produkte

5

6

Web 2.0 Beispiele

Ausblick

3

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 5 Pientka, Impaq AG, Apache Geronimo

Was ist ein JavaEE-Server?

Quelle: SUN

Java Platform Enterprise Edition (Java EE 5.0)

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 6 Pientka, Impaq AG, Apache Geronimo

JavaEE Generationen

zertifizierte Server

2029

24

12

4

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 7 Pientka, Impaq AG, Apache Geronimo

JavaEE Geschichte

Die Anforderungen steigen. Komplexität auch?

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 8 Pientka, Impaq AG, Apache Geronimo

JavaEE 6.0 steht vor der Tür…2009

JSR-316 13 Monate Verzug im Zeitplan! (Public Review Ballot) 23.2.2009: alle JSR sollten early public Draft sein

Ziele: � Erweiterbarkeit, Modularität/ Profile, einfachere Entwicklung, SCANeue JSRs: � JSR-196 Java Authentication SPI for Containers � JSR-236 Timer for Application Servers � JSR-237 Work Manager for Application Servers � JSR-299 Web Beans (Public Review Ballot)

= Context and Dependency Injection ?� JSR-311 JAX-RS: Java API for RESTful Web Services Aktualisierte Technologien:� Java SE 6-Unterstützung� Enterprise JavaBeans 3.1 (Public Review Ballot)� Java Persistence API 2.0 (Public Review Ballot)� Servlets 3.0 (Public Review Ballot)� JavaServer Faces 2.0 (Public Review Ballot)� JAX-WS 2.2 (Maintenance)� Java EE Connector API 1.6 (Public Review Ballot)

“Java EE 6 will be the most important release of the platform since it was released nearly 10 years ago” Rod Johnson

“The next wave of innovation in platform middleware will likely emerge from the convergence of Spring, OSGi, SCA and other initiatives, rather than from the Java EE community. “ Gartner

5

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 11 Pientka, Impaq AG, Apache Geronimo

Warum ein neuer Java-Applikationsserver?

� Neu Anforderungen

� Neue Generation von Servern

� Reife des Marktes/ Technologie

� Innovation trotz Kompatibiltät

� Professionelle OpenSource ist eine echte Alternative zu kommerziellen Produkten

� Wer braucht ein Rundum-Sorglos-Paket?

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 12 Pientka, Impaq AG, Apache Geronimo

Vergleichsmöglichkeiten

� Marktstudie/Benutzerbefragung: (Evans Data, ohloh, Forester, Gartner)

� Produkttests (JavaMagazin, IX)

� Benchmark (SPECjAppServer2004)

� Statistiken (Download, Aktivitäten)

“Very large, active development team

Over the past twelve months, 26 developers

contributed new code to Apache Geronimo.

This is one of the largest open-source teams in the

world, and is in the top 2% of all project teams

on Ohloh.”

6

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 15 Pientka, Impaq AG, Apache Geronimo

Codezeilen, Größen im Ohloh.net-Vergleich

GlassFish (80-105 MB)

JBoss Application Server (106 MB)

Apache Geronimo (16, 55, 74 MB)

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 16 Pientka, Impaq AG, Apache Geronimo

Vergleich der Downloadzahlen

JBoss: 30.000 und 100.000 Downloads/ MonatGeronimo: 70.000 und 180.000 Downloads/ MonatGlassfish: 300.000 und 600.000 Downloads/ Monat (inkl. JavaEE SDK)

2.1.1 2.1.2 2.1.32.1

7

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 18 Pientka, Impaq AG, Apache Geronimo

Agenda

1 Noch ein Applikationsserver?

2 Apache Geronimo: Überblick

3

4 Apache SOA-Produkte

Erster Eindruck

5

6

Web 2.0 Beispiele

Ausblick

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 20 Pientka, Impaq AG, Apache Geronimo

Geronimo Ziele

� Einfache Benutzung

� Apache Software License

� Geeignet für Entwickler, Administratoren und Integratoren

� Eclipse-Unterstützung

� Regelmäßige Releases mit neuen Funktionen und Fehlerkorrekturen

� lebendige Community

8

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 21 Pientka, Impaq AG, Apache Geronimo

Geronimo modularer Aufbau

Geronimo Kern

Webcontainer

Sicherheit SOAP, WebService

EJB, JPA, Scheduling, Reporting, Portal, andere Plugins

Web-Cluster JMS

Portletcontainer

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 22 Pientka, Impaq AG, Apache Geronimo

Geronimo Versionen

August2003

�Apac

he G

eron

imo P

rojek

t ges

tartet

�V1.0-

M5 rele

ased,

J2EE 1

.4 Z

ertifiz

ieru

ng

Okt2005

Jan2006

�V1.0 re

lease

d

Juni2006

�V1.1 re

lease

d

�V2.1.4

Sep2006

�V1.1.1

releas

ed

Juni2007

�V2.0-M

6 rele

ased,

Java

EE 5

Zerti

fizie

rung

Aug2007

�V2.0.1

releas

ed

Okt2007

�V2.0.2

releas

ed

Feb2008

�V2.1 re

lease

d

Sept2008

�V2.1.3

releas

ed

�V2.2

März2009

9

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 23 Pientka, Impaq AG, Apache Geronimo

Was ist Apache Geronimo?

Ein leichtgewichtiger

JavaEE-Anwendungsserver

unter Apache Lizenz

Schmalfuß(~75 MB download)

JavaEEzertifiziert

Geringe Kosten Professioneller

Support möglich

sehr freie Lizenz

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 24 Pientka, Impaq AG, Apache Geronimo

Apache Geronimo Komponenten

Tomcat

OpenJPA

Möglichkeiten pro Produkt n und Version k !

10

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 25 Pientka, Impaq AG, Apache Geronimo

Apache Geronimo integriert

Tomcat

OpenJPA

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 28 Pientka, Impaq AG, Apache Geronimo

Geronimo Architektur

LifeCycleService

NamingService

SecurityService

TransactionService

GBean Kernel

Kernel Services

Geronimo

Liferay

Commons

Tomcat ActiveMQ StAX Axis 2 Etc.

Jetty

OpenEJB

OpenJPA

Etc.

CXF

Etc.

Derby Etc.

Etc.

Optional Plugins

11

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 29 Pientka, Impaq AG, Apache Geronimo

Geronimo Architektur Exkurs: MBean vs. GBean-Ansatz

MBeans mit MBeanServer GBeans mit Mikro-KernelGeronimo verwendet sowohl Constructor als auchSetter InjectionInversionOfControl (IoC)

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 30 Pientka, Impaq AG, Apache Geronimo

Geronimo Bean (GBean)

� Modularer Mikro-Kernel (GBean-Manager)� Jedes Modul ist eine GBean� GBean haben Lebenszyklus und können zur Laufzeit gestoppt/ gestartet werden (~OSGI)

� GBeans sind Voraussetzung für Plug-ins� GBeans über JMX-Adapter verwaltbar

“Microkernels have won. The only real argument for monolithic systems was performance.” (Andrew Tanenbaum, 1992)

12

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 31 Pientka, Impaq AG, Apache Geronimo

Geronimo Bean (GBean)

GBeanGBean GBean

Geronimo Kern

KonfigurationKonfiguration

Abhängigkeiten

Abhängigkeiten werden in Deploymentplan beschrieben.

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 32 Pientka, Impaq AG, Apache Geronimo

Geronimo Module/ Konfiguration

� Eindeutiger Modul-Namen, wie in Maven2:moduleId=groupId/artifactId/version/type

� Zusammenstellung von konfigurierten GBeans

� Modul wird selbst wieder als GBean verwaltet

groupId artifactId version type

13

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 34 Pientka, Impaq AG, Apache Geronimo

Geronimo Module/ Konfiguration

� Beispiel: org.apache.geronimo.configs/welcome-tomcat/2.0.2/car

� Zur Adressierung im Implementierungsplan oder im Deployer-Werkzeug verwendet<dependency>

<groupId>gruppe<groupId>

<artifactId>datei<artifactId>

<version>version<version>

<type>typ<type>

</dependency>

� Abspeicherung im Repository unter repository/

groupId/artifactId/version/artifactIdversion.type

GBean1

GBean2GBean3

Module1

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 35 Pientka, Impaq AG, Apache Geronimo

Modulverwaltung- und Konfiguration

ModuleRepository

speichern

referenziert

Geronimo Kernel

config.xml

laden

14

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 36 Pientka, Impaq AG, Apache Geronimo

Verzeichnis-Aufbau Repository

$GERONIMO_HOME/repository|+-/...|+-/commons-logging-+| || +-/commons-logging-+| || +--/1.0.4--+| || +-commons-logging-1.0.4.jar+-/...

Von einer Version eines Moduls existiert nur ein ExemplarTransparente Adressierung, Vermeidung von Duplikaten

Ende der

JAR-Hölle

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 37 Pientka, Impaq AG, Apache Geronimo

Geronimo Systemmodule

15

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 38 Pientka, Impaq AG, Apache Geronimo

Geronimo Systemmodule: Startmeldung

1/9 org.apache.geronimo.configs/rmi-naming/2.1.3/car

2/9 org.apache.geronimo.configs/j2ee-server/2.1.3/car

3/9 org.apache.geronimo.configs/transaction/2.1.3/car

4/9 org.apache.geronimo.configs/j2ee-security/2.1.3/car

5/9 org.apache.geronimo.configs/jasper/2.1.3/car

6/9 org.apache.geronimo.configs/tomcat6/2.1.3/car

7/9 org.apache.geronimo.configs/geronimo-gbean-deployer/2.1.3/car

8/9 org.apache.geronimo.configs/sharedlib/2.1.3/car

9/9 org.apache.geronimo.configs/webservices-common/2.1.3/car

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 39 Pientka, Impaq AG, Apache Geronimo

Modul-Abhängigkeiten

jee-system

jee-specs rmi-naming

tomcat6

tomcat6-

deployer

tomcat6-

console

jee-server

activemq-

ra

activemq-

console

openejb

openejb-

deployer

transaction

xmlbeans

16

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 40 Pientka, Impaq AG, Apache Geronimo

Eigenes Assembly

jee-system

jee-specs rmi-naming

tomcat6

tomcat6-

deployer

tomcat6-

console

jee-server

activemq

-ra

activemq

-console

openejb

openejb-

deployer

transaction

MyApp

xmlbeans

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 41 Pientka, Impaq AG, Apache Geronimo

Geronimo fertige Assemblies

Big-G WASCE

Little-G Micro-G EigenesPaket

Bsp.: SOA-Assemblygaswerk.sourceforge.net

Nur soviel, wie nötig

8 Plugingruppen

ab Geronimo 2.2

17

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 46 Pientka, Impaq AG, Apache Geronimo

Produktvarianten: Darf es etwas mehr sein?

� Apache Geronimo� Little-G: Webserver ohne Webkonsole

� Tomcat, Jetty: ausgereift vs. innovativ/schnell

� AXIS, CXF: ausgereift vs. flexibel/schnell

� IBM WebSphere Community Edition (WAS CE)� Ohne Source-Code

� Bessere Qualität, Dokumentation, Beispiele

� Mehrere Plattformen

� Definierte, längere Release-Zyklen

� Migrationsmöglichkeit zu IBM WebSphere

� Support

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 47 Pientka, Impaq AG, Apache Geronimo

Open-Source-Code

WebSphere

Application Server

Network Deployment

WebSphere

Extended Deployment

WebSphere Application

Server Community

Edition

WebSphere Application Server - Express

WebSphereApplication Server

WebSphere

Application Server

for zOS

gemeinsamer Code

BenutzeranforderungenKostenRessourcenbedarf

FunktionalitätHochverfügbarkeitSkalierbarkeit

Die WebSphere Familie: Scale-UP (Quelle: IBM)

18

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 48 Pientka, Impaq AG, Apache Geronimo

Installation von Anwendungen

� Web Console

� Hot Deployment Verzeichnis deploy� Nur für Entwicklung, für Produktion deaktivieren

� Kommandozeilen Werkzeug� deployer.sh --user system --password

manager deploy [war/jar/ear] [plan file]

� GShell (Groovy-basiert): gsh.sh� Arten:

� WAR� EAR� RAR� CAR

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 50 Pientka, Impaq AG, Apache Geronimo

Deploymenteinheiten mit Deploymentplan

JAR META-INF\ejb-jar.xmlopenejb-jar.xml

RARMETA-INF\ra.xml

geronimo-ra.xml

WEB-INF\web.xmlgeronimo-web.xmlWAR

EARMETA-INF\application.xml

geronimo-application.xml

19

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 57 Pientka, Impaq AG, Apache Geronimo

Deployment vereinfachen: Domain spezifische Sprache

Unterschiede: Erstell-/Laufzeit

D

e

p

l

o

y

m

e

n

t

p

l

a

n

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 59 Pientka, Impaq AG, Apache Geronimo

WARweb.xml

geronimo-web.xml

Servlet

applicationContext.xml

<bean id="dataSource"

class="...JndiObjectFactoryBean">

<property name="jndiName">

<value>java:comp/env/Datenbank</value>

</property>

</bean>

...

ctx.getBean(„ Datenbank“)

...

<resource-ref>

<res-ref-name>Datenbank</res-ref-name>

<res-type>javax.sql.DataSource</res-type>

<res-auth>Container</res-auth>

</resource-ref>

<resource-ref>

<ref-name>Datenbank</ref-name>

<pattern>

<groupId>console.dbpool</groupId>

<artifactId>MySqlDS</artifactId>

<name>MySqlDS</name>

</pattern>

</resource-ref>

DB

Beispiel: Anwendungsaufbau

Deplomenentbeschreibung =

Sprache für Geronimo-Deployment

20

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 61 Pientka, Impaq AG, Apache Geronimo

Deployment auf der Kommandozeile

DeploymentwerkzeugGeronimo

Server

Konfigurationsdatenbank

Repository

Anwendungsmodul

Deploymentplan

Hot, offline, Deployment mit Plan

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 62 Pientka, Impaq AG, Apache Geronimo

Mehrere Geronimo Instanzen, Repositories, Plugins

Geronimo-Server DEV

Geronimo-Server PROD

MavenServlet

CAR-

Modul.JAR

CONFIG

Modul.SER

Repository

Geronimo-Server

Repository

deploy search-plugins

http://geronimo.apache.org/plugins/geronimo-2.1/

http://geronimo.apache.org/plugins/geronimo-2.1/

http://localhost:8080/plugin/maven-repo/

geronimo-plugins.xml

FarmingHosting

21

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 63 Pientka, Impaq AG, Apache Geronimo

Cluster & Lastverteiler

Apache-

HTTP

Server

Browser

Browser

Geronimo-Server

Geronimo-Servermod_jk

AJP

AJP

HTTP/S

DatenbankMaster

80

443

8080

8443

8009

8080

8443

8009

DatenbankSlave

EJB-Cluster mit Wadi, TerracotaIIS-Verwendung über mod_proxyTomcatcluster-Beispiel vorhanden

Sitzungsdaten replizieren

Sitzungsübernahme bei Ausfall

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 65 Pientka, Impaq AG, Apache Geronimo

Geronimo Monitoringkonsole JVM

verfügbare Statistikdaten:

•Statistikdaten des Transaktionsmanagers

•JVM-Statistikdaten

•Statistikdaten für AJP-/Web-/WebSSL-Konnektoren

•Thread-Pool-Statistikdaten

•Statistikdaten für Webanwendungen

22

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 67 Pientka, Impaq AG, Apache Geronimo

Agenda

1 Noch ein Applikationsserver?

2 Apache Geronimo: Überblick

3

4 Apache SOA-Produkte

Erster Eindruck

5

6

Web 2.0 Beispiele

Ausblick

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 68 Pientka, Impaq AG, Apache Geronimo

Erste Schritte: Skripte

� JDK 5.0 installieren und JAVA_HOME setzten� Herunterladen, auspacken:

� http://geronimo.apache.org/downloads.html

� Server starten: � startup.[bat|sh]

� Aufrufen:� http://localhost:8080/console

� Module anzeigen lassen:� deploy .[bat|sh] list-modules

� Plug-ins suchen, installieren:� deploy.[bat|sh] search-plugins

http://geronimo.apache.org/plugins/samples-2.1.2/

� Anwendung installieren:� deploy .[bat|sh] list-modules

� Server stoppen (CTRL+C): � shutdown.[bat|sh]

23

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 69 Pientka, Impaq AG, Apache Geronimo

Arbeitsschritte mit Geronimo

Server starten: startup

Anwendung installieren: deploy deploy sample.war

Anwendung startendeploy start ModuleID

Anwendung stoppendeploy stop ModuleID

Anwendung deinstallierendeploy undeploy ModuleID

Server stoppen: shutdown

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 70 Pientka, Impaq AG, Apache Geronimo

Werkzeugunterstützung

� Eclipse 3.4+WTP 3, MAVEN 2.0.8� SUN/IBM JDK 5.0 oder 6.0

Migrationsunterstützung für:� Tomcat� JBoss� BEA WebLogic� WebSphere

Alternativ:� NetBeans� ANT� RAD

24

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 71 Pientka, Impaq AG, Apache Geronimo

Geronimo Web-Console

Als AJAX-Portlet innerhalb des Pluto-Portal-Containershttp://localhost:8080/console

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 72 Pientka, Impaq AG, Apache Geronimo

Agenda

1 Noch ein Applikationsserver?

2 Apache Geronimo: Überblick

3

4

5

Apache SOA-Produkte

6

Web 2.0 Beispiele

Erster Eindruck

Ausblick

25

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 73 Pientka, Impaq AG, Apache Geronimo

OpenSource SOA-Stack Apache

� Axis/ CXF (Webservice)

� Tomcat/Geronimo (Applikationsserver)

� Pluto/ Jetspeed (Portal)

� ActiveMQ/ ServiceMix (ESB/JBI)

� Synapse-Axis (WS-ESB)/ Camel-CXF

� ODE (Orchestration Director Engine)

� Tuscany (SCA/SDO/DAS)

� jUDDI (Service Registry)

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 74 Pientka, Impaq AG, Apache Geronimo

Apache Geronimo als SOA-Stack

Integration vieler Apache-KomponentenSupport erhältlich

Incubating Apache’s Next Generation Platform, Forrester, 2007

26

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 75 Pientka, Impaq AG, Apache Geronimo

Apache SOA-Stack

Apache Tomcat

eigene AnwendungSOAP/Web

Services (Axis)

JMS Messaging

Security / Authentication

Web Tier Clustering

andereDienste

eigene Integration

SOAP/Web Services (Axis)

Entwicklungs-Wartungsaufwand

eigene Anwendung

Apache Tomcat

SOAP/Web Services (Axis)

JMS Messaging

Security / Authentication

Web Tier Clustering

weitere Plug-ins für EJBs, Transaktion, etc.

Geronimo Plug-In Kernel

Integriertgetestet

erweiterbar

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 76 Pientka, Impaq AG, Apache Geronimo

Integrierte SOA-Anwendungen

� jUDDI Java Implementierung derUniversal Description, Discovery, und Integration (UDDI) Spezifikation für Web Serviceshttp://localhost:8080/juddi/

� ActiveMQ Konsolen-Portlet

� Pluto Portlet-Container: JSR-168 Portlets

� Axis/ CXF (Webservice + Tools)

27

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 77 Pientka, Impaq AG, Apache Geronimo

Agenda

1 Noch ein Applikationsserver?

2 Apache Geronimo: Überblick

3

4 Apache SOA-Produkte

5 Web 2.0 Beispiele

Erster Eindruck

6 Ausblick

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 78 Pientka, Impaq AG, Apache Geronimo

WEB 2.0-/SOA-Welt wachsen zusammen

Balance zwischen

ausgereiften Standards &

innovativen Frameworks

28

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 80 Pientka, Impaq AG, Apache Geronimo

Webanwendung: klassisch und mit AJAX

traditionell synchron

asynchron mit Ajax

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 84 Pientka, Impaq AG, Apache Geronimo

Dojo Toolkit Übersicht

� 2004 von Alex Russell� Dojo Foundation (IBM, Sun, AOL u.a.)� Komponenten:

� Dojo Kern:� Dijit: Dojo Widgets Komponenten� mit JavaScript, HTML und CSS� DojoX: Dojo Experimental

dojo/dojoc/demos/featureexplorer_local.htmldojo/dijit/themes/themeTester.html

29

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 92 Pientka, Impaq AG, Apache Geronimo

WAS CE Feature Pack Überblick

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 93 Pientka, Impaq AG, Apache Geronimo

Beispiel: PlantsByWebSphere

Kaufhaus für Pflanzen und Gartengeräte

30

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 94 Pientka, Impaq AG, Apache Geronimo

PlantsByWebSphere Client-/Server

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 95 Pientka, Impaq AG, Apache Geronimo

index.html

<script type="text/javascript">

dojo.require("dijit.layout.ContentPane");

dojo.require("dijit.layout.TabContainer");

dojo.require("ibm.widget.InventoryGrid");

dojo.require("ibm.widget.ItemDetails");

dojo.require("ibm.widget.HtmlShoppingCart");

</script>

PlantsByWebSphere-Client AJAX-Seitenaufbau

31

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 98 Pientka, Impaq AG, Apache Geronimo

Agenda

1 Noch ein Applikationsserver?

2 Apache Geronimo: Überblick

3

4 Apache SOA-Produkte

5 Web 2.0 Beispiele

Erster Eindruck

6 Ausblick

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 99 Pientka, Impaq AG, Apache Geronimo

Fazit Geronimo

� Trotz junger Geschichte, beachtliche Reife, grosse Zukunft

� Gute Standardunterstützung

� Gute Dokumentation

� Große Wahlmöglichkeit� Little-G, Tomcat/Jetty, Axis/CFX, Geronimo/WAS CE

� Eigene Assemblies nach Maß

� Gute Migrationsunterstützung

� Einfache und automatisierbare Verwaltung

32

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 102 Pientka, Impaq AG, Apache Geronimo

Ausblick

� Wiedergeburt des Applikationsservers (SOA/ Web 2.0) -> Großvater bleibt fitEnde der Einheitsgröße, mehrere Konfektionsgrößen (JavaEE 6)

Einheitliches Modulkonzept (Microkernel) für JSE/JEE, OSGI? -> Produktrenovierung, neue Einsatzgebiete

� Geronimo ist flexibel konfigurierbar und erweiterbar -> die Enkel wachsen heran

� Geronimo integriert viele Apache Komponenten -> Apache-SOA-Stack

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 103 Pientka, Impaq AG, Apache Geronimo

Bücher, Artikel Geronimo:

� Apachen Geronimo: Serverhandbuch, Frank Pientka, DPunkt-Verlag

� Apachen Geronimo: Frank Pientka, JM 08/08

� Experience Java EE Using WebSphere Application Server Community Edition: Redbook, 02/09, sg247639

� Building Dynamic Ajax Applications Using WebSphere Feature Pack for Web 2.0: Redbook, 11/08, sg247635

� Migrating from WebSphere Application Server Community Edition to WebSphere Application Server: : Redbook, 08/07, sg247433

� Developing Rich Internet Applications for WebSphere Application Server Community Edition: 09/08, IBM developerworks

� What’s new in WebSphere Application Server Community Edition 2.1, 06/08, IBM developerworks

33

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 104 Pientka, Impaq AG, Apache Geronimo

IMPAQ AG

Mobil +49 175 1613922

Phone +49 (231) 9704-200

Fax +49 (231) 9704-199

Senior Berater

Frank Pientka www.impaqgroup.com

Emil-Figge-Str. 85

44227 Dortmund

Vielen Dank für Ihre Aufmerksamkeit!!!

[email protected]

“The entire history of software engineering is

one of rising levels of abstraction”

Grady Booch

Nächste Geronimo Schulung: 8.-9.6.09, OIO, Mannheim

www.oio.de/seminar/open-source/geronimo-schulung.htm