TECHNOLOGIE - FORUM 10. März 2006 10.03.2006
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
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
PROGRAMMIERFABRIK News Firmenseminar – Projekt-Management 29. bis 30. Juni 2006 in Traunkirchen 10.03.2006
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
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
Open Source J2EE Entwicklungsumgebung 10.03.2006
Open Source J2EE Betriebsumgebung 10.03.2006
Erfahrungen mit Open Source Tools für die Entwicklung und den Betrieb von J2EE-Anwendungen Uwe Wolfinger 10.03.2006
Bitte um Aufmerksamkeit 10.03.2006
AGENDA ELDA JBoss PostgreSQL Eclipse und Plugins (cvs, maven, xdoclet) Hibernate Clustering mit Apache/JBoss Datenbank Clustering Einsatz von ecard-Signatur/Bürgerkarte 10.03.2006
ELDA Elektronischer Datenaustausch mit den österreichischen Sozialversicherungsträgern 10.03.2006
Meldungen erstellen (verarbeiten) Partner Einheitlicher Datensatz Datensammelsystem: Entgegennahme, Prüfung, Rückmeldung, Protokollierung, technischer Support Datendreh- scheibe HVB BM Finanzen SV-Träger Automatisierte Verarbeitung 10.03.2006
Arbeits- und Entgeltbe-stätigung für Krankengeld und Wochengeld Dienstgeber, Stb Krankenanstalten An-, Ab- und Änderungsmeldung, Beitragsnachweisung, Lohnzettel, Hospizkarenz. Arbeits- und Entgeltbe-stätigung für Krankengeld und Wochengeld Kostenüber- nahme Aufnahmen und Entlassungen Ambulanzgebühr Ärzte Abrechnung Rotes Kreuz, Arbeiter- Samariter-Bund und Taxis Arztabrechnung Abrechnung Heilbehelfe und Hilfsmittel Transporteure Sonstige VP 10.03.2006
ELDA Lizenzen 10.03.2006
ELDA Menge 2005 ca. 28.000.000 Meldungen 10.03.2006
ELDA Erfassung Offene HTTPS/FTP/Modem Schnittstelle für: ELDA Client für Windows Lohnsoftware Ärztesoftware ELDA Online Formulare ... 10.03.2006
ELDA Architektur neu 10.03.2006
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
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
Verwendete Features Tomcat Clustering Farm Deployment JCA Datasources/Pooling Scheduling Logging JAAS 10.03.2006
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
PostgreSQL Installation: Dauer ca. 10min Menge (z.b. in ELDA)? Tabellen mit 20-30Mio Einträgen kein Problem DB Größe von 40GB kein Problem Backup im laufenden Betrieb möglich 10.03.2006
Eclipse und Plugins (CVS) Concurrent Versioning System Verwendet Delta Codierung Optimistisches System Arbeitsweise: Auschecken (Repository) - kein Locking! Bearbeiten Einchecken evtl. Konflikte auflösen (Merge) 10.03.2006
Eclipse und Plugins (Maven) Build Tool Bindet ANT ein Definiert Artefakte und Repositories ermöglicht Versionierung Baut diese zusammen (z.b. zu einem EAR) Führt Tasks aus (z.b. Genierung einer Projekt Web Site) 10.03.2006
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
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
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
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
Hibernate OR Mapping Framework Zu jeder Tabelle existiert eine hbm.xml Datei Tabellen können Verknüpft werden HQL bietet Zugriff auf Objekte Transaktionsverwaltung 10.03.2006
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
Hibernate Beispiel Hibernate Abfrage: session = getNewSession(); 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
Clustering mit Apache/JBoss mod_jk JBoss J G r o u p s JBoss J G r o u p s 10.03.2006
Clustering mit Apache/JBoss mod_jk.conf <IfModule mod_jk.c> JkWorkersFile /etc/apache2/workers.properties JkLogFile /var/log/apache2/mod_jk.log JkLogLevel info JkMount /elda-admin/*.do elda_admin_balancer </IfModule> 10.03.2006
Clustering mit Apache/JBoss workers.properties worker.list=elda_admin_balancer worker.maintain=60 worker.hselde1.host=157.177.192.61 worker.hselde1.port=8009 worker.hselde1.type=ajp13 worker.hselde1.socket_timeout=5 worker.hselde1.socket_keepalive=1 worker.hselde1.lbfactor=50 worker.hselde1.cachesize=1 worker.hselde1.cache_timeout=0 worker.hselde1.local_worker=0 worker.hselde1.sticky_sessions=1 worker.elda_admin_balancer.type=lb worker.elda_admin_balancer.balanced_workers=hselde1 worker.elda_admin_balancer.sticky_sessions=1 worker.elda_admin_balancer.local_worker_only=0 10.03.2006
Clustering mit Apache/JBoss Tomcat jvmRoute Eintrag im server.xml benennt den Knoten <distributable/> im web.xml ermöglicht Session Replication 10.03.2006
Datenbank Clustering HA-JDBC: 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 10.03.2006
Datenbank Clustering JBoss JBoss DB1 DB2 H A J D B C J G r o u p s J G 10.03.2006
Signatur/Bürgerkarte Client eCard kann optional und gratis mit einer sogenannten Verwaltungssignatur ausgestattet werden Tool zur Anwendung der Signatur: BDC Hotsign itSolution TrustDesk Dank Rahmenvertrag Bund gratis 10.03.2006
Signatur/Bürgerkarte Server 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 10.03.2006
Signatur/Bürgerkarte Beispiel: Meldebestätigung, Unbedenklichkeitsbescheinigung 10.03.2006
Signatur/Bürgerkarte Beispiel: Versichertendatenauszug 10.03.2006
Fazit Open Source Einsatz im Hochleistungsbereich möglich Tools bieten das, was man braucht, nicht, was man meint zu brauchen Lizenzkosten Signatur Mit 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
10.03.2006