10.03.2006PFH-Technologie-Forum-2006-01 TECHNOLOGIE - FORUM 10. März 2006

Preview:

Citation preview

10.03.2006 PFH-Technologie-Forum-2006-01

TECHNOLOGIE - FORUM

10. März 2006

10.03.2006 PFH-Technologie-Forum-2006-01

AGENDA

PROGRAMMIERFABRIK News (Seyruck)

Erfahrungen mit Open Source Tools für die Entwicklung

und den Betrieb von J2EE-Anwendungen (Wolfinger)

Kegeln (alle)

10.03.2006 PFH-Technologie-Forum-2006-01

PROGRAMMIERFABRIK News

Verstärkte Kooperation mit BI-Marktführer SAS

Neuer Vertriebsleiter für BI: Dirk H. Janssen

Verstärkte Pressearbeit

Kamingespräch am 14.03.2006

Weiterer Kompetenzaufbau

10.03.2006 PFH-Technologie-Forum-2006-01

PROGRAMMIERFABRIK News

Firmenseminar – Projekt-Management

29. bis 30. Juni 2006 in Traunkirchen

10.03.2006 PFH-Technologie-Forum-2006-01

PROGRAMMIERFABRIK News Aktueller Personalbedarf:

PowerBuilder für Linz

BI (DataStage) für Wien

.NET-Entwickler (HMI) für Linz

C++ für Linz

Gupta für OÖ

Zope / Python (CMS) für Linz

10.03.2006 PFH-Technologie-Forum-2006-01

PROGRAMMIERFABRIK News

Fokus auf J2EE-Entwicklung mit OS Tools

Verstärkte Pressearbeit

Teilnahme an der ITnT mit der Open Source Experts

Group der WKO

10.03.2006 PFH-Technologie-Forum-2006-01

Open Source J2EE Entwicklungsumgebung

AnforderungArchi-tektur

Design Implementierung Test Produktion

CVS, Subversion

ERmodeller, AOP, open

Architecture-ware, Design Patterns, ...

JBoss IDE, Sysdeo, Easy Struts, JSF,

Lomboz, XMLBuddy, WebTools Project,

Hibernate, Axis, PMD, Jopera, Visual Editor,

...

Ant, Maven, Bugzilla, ...

XDoclet, ...

Linux, ...

Spring

UMLet, Umbrello,

JRequire, ...

JUnit, DBUnit, Cactus,

...

JBoss, JMX, Tomcat, Jetty, ...

Eclipse + PlugIns

PostgreSQL, MySQL, ...

10.03.2006 PFH-Technologie-Forum-2006-01

Open Source J2EE Betriebsumgebung

Client Tier Business Applets, Mozilla Partner or Applications, other System CORBA Clients Web Services Technologies IIOP HTML WML (SOAP, UDDI, WSDL, ebXML) Servlets JSPs / JSFs J2EE- Tomcat Server EJBs JBoss Connectors JMS JDBC Proprietary Web Services Technologies Back-End Protocol (SOAP, UDDI, WSDL, ebXML) Systems SQL-DB Legacy Business PostgreSQL, System Partner or MySQL, ... other System

10.03.2006 PFH-Technologie-Forum-2006-01

Erfahrungen mit Open Source Tools

für die Entwicklung und den Betrieb

von J2EE-Anwendungen

Uwe Wolfinger

10.03.2006 PFH-Technologie-Forum-2006-01

Bitte um Aufmerksamkeit

10.03.2006 PFH-Technologie-Forum-2006-01

AGENDAELDAJBossPostgreSQLEclipse und Plugins (cvs, maven, xdoclet)HibernateClustering mit Apache/JBossDatenbank ClusteringEinsatz von ecard-Signatur/Bürgerkarte

10.03.2006 PFH-Technologie-Forum-2006-01

ELDA

Elektronischer Datenaustauschmit den österreichischenSozialversicherungsträgern

10.03.2006 PFH-Technologie-Forum-2006-01

Meldungen erstellen(verarbeiten)

Einheitlicher Datensatz

Datendreh-scheibe HVB

SV-Träger Automatisierte Verarbeitung

Partner

Datensammelsystem:Entgegennahme, Prüfung,Rückmeldung, Protokollierung,technischer Support

BM Finanzen

10.03.2006 PFH-Technologie-Forum-2006-01

An-, Ab- und Änderungsmeldung, Beitragsnachweisung, Lohnzettel, Hospizkarenz.Arbeits- und Entgeltbe-stätigung für Krankengeld und Wochengeld

Dienstgeber, Stb Krankenanstalten

Ärzte

Transporteure

Sonstige VP

ArztabrechnungAbrechnung RotesKreuz, Arbeiter-Samariter-Bundund Taxis

Aufnahmen undEntlassungen

Kostenüber-nahme

Ambulanzgebühr

Abrechnung Heilbehelfe und Hilfsmittel

10.03.2006 PFH-Technologie-Forum-2006-01

ELDA Lizenzen

0

5000

10000

15000

20000

25000

30000

35000

40000

45000

50000Jä

nn

er

96

Juli

96

Jän

ne

r 9

7

Juli

97

Jän

ne

r 9

8

Juli

98

Jän

ne

r 9

9

Juli

99

Jän

ne

r 0

0

Juli

00

Jän

ne

r 0

1

Juli

01

Jän

ne

r 0

2

Juli

02

Jän

ne

r 0

3

Juli

03

Jän

ne

r 0

4

Juli

04

Jän

ne

r 0

5

An

zah

l L

ize

nze

n

10.03.2006 PFH-Technologie-Forum-2006-01

ELDA Menge

Dienstgebermeldung (Satzart) Anzahl %40 Lohnzettel Sozialversicherung 5.521.085 29%L1 Lohnzettel Finanz 4.558.345 24%20 Beitragsnachweisung 2.651.309 14%03 Anmeldung 1.748.369 9%04 Abmeldung 1.723.642 9%06 Änderungsmeldung 767.585 4%Andere 2.118.888 11%Summe 19.089.223 100%

2005 ca. 28.000.000 Meldungen

10.03.2006 PFH-Technologie-Forum-2006-01

ELDA Erfassung

Offene HTTPS/FTP/Modem Schnittstelle für:ELDA Client für WindowsLohnsoftwareÄrztesoftwareELDA Online Formulare...

10.03.2006 PFH-Technologie-Forum-2006-01

ELDA Architektur neu

Internet

SV NetIntranet

Apache RZ

Apache ARZ

Intranet Apache RZ

Port 80/443

Port 80/443

Port 80

Modem/FTP

Port 21

JBoss RZ

JBoss ARZ

AJP13 Port 8009

Port 8080

AJP13 Port 8009

AJP13 Port 8009

multicast Port 7500

Port 8080

Port 8080

AJP13 Port 8009

Postgres RZ

Postgres ARZ

DIGI BoxModem

JNDI Ports1098 und 1099RMI Port 4444

Shark

Postgres Port 5432NFS Port 2049

Postgres Port 5432NFS Port 2049

Postgres Port 5432NFS Port 2049

Postgres Port 5432NFS Port 2049

NFS Port 2049

NFS Port 2049

32-bit Server

64-bit Server

Intsrv01Signatur

Http Port 7080

10.03.2006 PFH-Technologie-Forum-2006-01

JBoss

Erste JBoss Version: 1999 Unternehmensgründung (JBossGroup): 2001 Gründung einer AG (JBossInc.): 2004 Headquarter in Atlanta und in der Schweiz 42% verwenden JBoss für die Entwicklung (2003) Seit 2004 Nummer 1 im Produktionseinsatz (lt. Gartner) Diverse Produktaquisitionenund Erweiterungen:

ApacheTomcat Hibernate JBossjBPM JBossCache JBossEclipseIDE JBossPortal (JSR-168 konform)

10.03.2006 PFH-Technologie-Forum-2006-01

JBoss

6 Millionen Downloads 2004 500 contributors, 25 coredevelopers LGPL Lizenz Ab JBoss 4.x Sun Zertifiziert Coredevelopers werden finanziert über:

Dokumentation Wartungsverträge Schulungen Partnerverträge

Einfache Handhabung: Unzip and Run

10.03.2006 PFH-Technologie-Forum-2006-01

Verwendete Features

Tomcat ClusteringFarm DeploymentJCA Datasources/PoolingSchedulingLoggingJAAS

10.03.2006 PFH-Technologie-Forum-2006-01

PostgreSQL

POSTGRES, Version 4.2, entwickelt an der University of California in Berkeley, Computer Science Department

Pionier im DB Bereich Unterstützt SQL:2003 Derzeit am höchsten entwickelte Open Source DB Unterstützt: data types, functions, operators, aggregate functions, index

methods, procedural languages

10.03.2006 PFH-Technologie-Forum-2006-01

PostgreSQL

Installation: Dauer ca. 10min

Menge (z.b. in ELDA)?Tabellen mit 20-30Mio Einträgen kein ProblemDB Größe von 40GB kein ProblemBackup im laufenden Betrieb möglich

10.03.2006 PFH-Technologie-Forum-2006-01

Eclipse und Plugins (CVS)

Concurrent Versioning SystemVerwendet Delta CodierungOptimistisches SystemArbeitsweise:

Auschecken (Repository) - kein Locking!BearbeitenEincheckenevtl. Konflikte auflösen (Merge)

10.03.2006 PFH-Technologie-Forum-2006-01

Eclipse und Plugins (Maven)

Build ToolBindet ANT einDefiniert Artefakte und Repositoriesermöglicht VersionierungBaut diese zusammen (z.b. zu einem EAR)Führt Tasks aus (z.b. Genierung einer Projekt

Web Site)

10.03.2006 PFH-Technologie-Forum-2006-01

Eclipse und Plugins (xDoclet)

• Erstellen des Beans• Erstellen eines Remote Interface• Erstellen eines Home Interface• Erstellen eines EJB Deployment Descriptors(ejb-jar.xml)• Home Interface angeben <home>bondsCalculator.BondsHome</home>• Remote Interface angeben <remote>bondsCalculator.Bonds</remote>• EJB Klasse angeben<ejb-class>bondsCalculator.BondsBean</ejb-class>• Session Typ angeben <session-type>Stateful</session-type>• Erstellen eines weblogicDescriptors(weblogic-ejb-jar.xml)• Definieren des JNDI Namens <jndi-name>Bonds</jndi-name>• Viel Aufwand• Mit Ausnahme der Business Logic selbst, könnte alles generiert werden

10.03.2006 PFH-Technologie-Forum-2006-01

Eclipse und Plugins (xDoclet)

Definition in Header durch spezielle Tags Ähnlich JavaDoc(@param, @return, @throws, …) Generiert

Local und Remote Interfaces Local und Remote Home Deployment Descriptoren Hersteller Spezifische Deployment Descriptoren PrimaryKey Klasse Hibernate Business Objects und vieles mehr …

10.03.2006 PFH-Technologie-Forum-2006-01

Eclipse und Plugins (xDoclet)

Vorteile: Deployment Descriptoren sind immer up2date Codeänderungen sind nur an einer Stelle notwendig Durch automatische Generierung von Code spart man sich

viel Zeit

Funktionsweise Xdoclet funktioniert nur in Zusammenhang mit ANT Eigener Ant Task

10.03.2006 PFH-Technologie-Forum-2006-01

Eclipse und Plugins (xDoclet)

Beispiel Hibernate Definition: /** * @return Returns the name. * @hibernate.property * column="name" * not-null="true" * length="64"

*/ public String getName() { return name; }

10.03.2006 PFH-Technologie-Forum-2006-01

Hibernate

OR Mapping FrameworkZu jeder Tabelle existiert eine hbm.xml DateiTabellen können Verknüpft werdenHQL bietet Zugriff auf ObjekteTransaktionsverwaltung

10.03.2006 PFH-Technologie-Forum-2006-01

Hibernate

Beispiel Hibernate xDoclet Definition: /** * @return Returns the name. * @hibernate.property * column="name" * not-null="true" * length="64"

*/ public String getName() { return name; }

10.03.2006 PFH-Technologie-Forum-2006-01

Hibernate

Beispiel Hibernate Abfrage:

session = getSession();

Object o = session.createCriteria(clazz)

.add(criterion)

.addOrder(order)

.setMaxResults(1)

.uniqueResult();

session = getNewSession();

transaction = session.beginTransaction();

session.saveOrUpdate(Object);

session.flush();

transaction.commit();

10.03.2006 PFH-Technologie-Forum-2006-01

Clustering mit Apache/JBoss

Apache

JBoss JBoss

mod_jk

JGroups

JGroups

10.03.2006 PFH-Technologie-Forum-2006-01

Clustering mit Apache/JBoss

<IfModule mod_jk.c>JkWorkersFile /etc/apache2/workers.propertiesJkLogFile /var/log/apache2/mod_jk.logJkLogLevel infoJkMount /elda-admin/*.do elda_admin_balancer

</IfModule>

mod_jk.conf

10.03.2006 PFH-Technologie-Forum-2006-01

Clustering mit Apache/JBoss

worker.list=elda_admin_balancerworker.maintain=60

worker.hselde1.host=157.177.192.61worker.hselde1.port=8009worker.hselde1.type=ajp13worker.hselde1.socket_timeout=5worker.hselde1.socket_keepalive=1worker.hselde1.lbfactor=50worker.hselde1.cachesize=1worker.hselde1.cache_timeout=0worker.hselde1.local_worker=0worker.hselde1.sticky_sessions=1

worker.elda_admin_balancer.type=lbworker.elda_admin_balancer.balanced_workers=hselde1worker.elda_admin_balancer.sticky_sessions=1worker.elda_admin_balancer.local_worker_only=0

workers.properties

10.03.2006 PFH-Technologie-Forum-2006-01

Clustering mit Apache/JBoss

jvmRoute Eintrag im server.xml benennt den Knoten

<distributable/> im web.xml ermöglicht Session Replication

Tomcat

10.03.2006 PFH-Technologie-Forum-2006-01

Datenbank Clustering

Proxy JDBC Treiber

Alle JDBC Datenbanken

High-availability/Fault Tolerance: Knoten können im Betrieb verloren gehen bzw. hinzugefügt werden

Auto-Sync von neuen bzw. verlorengegangenen Knoten

Live activation/deactivation: z.b. um Wartungen durchzuführen

Write all/Read One: Performanceverbesserung beim Lesen

HA-JDBC:

10.03.2006 PFH-Technologie-Forum-2006-01

Datenbank Clustering

JBoss JBossJGroups

JGroups

HA

JDBC

HA

JDBC

DB1 DB2

10.03.2006 PFH-Technologie-Forum-2006-01

Signatur/Bürgerkarte

eCard kann optional und gratis mit einer sogenannten Verwaltungssignatur ausgestattet werden

Tool zur Anwendung der Signatur:BDC HotsignitSolution TrustDesk

Dank Rahmenvertrag Bund gratis

Client

10.03.2006 PFH-Technologie-Forum-2006-01

Signatur/Bürgerkarte

MOA Tools: Gratissoftware des Bundes zur serverseitigen Verifizierung und Anbringung von Amtssignaturen

Module: MOA–ID, MOA-wID: Identifikation MOA–SS: Server-Signatur

Amtssignatur MOA–SP: Signaturprüfung MOA–ZS: Elektronische Zustellung

Ersetzt RSa, RSb

Server

10.03.2006 PFH-Technologie-Forum-2006-01

Signatur/BürgerkarteBeispiel: Meldebestätigung, Unbedenklichkeitsbescheinigung

10.03.2006 PFH-Technologie-Forum-2006-01

Signatur/Bürgerkarte

Beispiel: Versichertendatenauszug

10.03.2006 PFH-Technologie-Forum-2006-01

FazitOpen Source

Einsatz im Hochleistungsbereich möglichTools bieten das, was man braucht, nicht, was man meint zu brauchenLizenzkosten

SignaturMit der eCard hat jeder einen Hochsicherheitsschlüssel gratis zur Verfügung (MOA-ID)Arbeiten mit Signaturen wird durch MOA Tools und BKU einfach möglich

10.03.2006 PFH-Technologie-Forum-2006-01

Recommended