Lotus Notes Integration mit Oracle Applicationsserver

Ähnliche Dokumente
Von ODBC zu OLE DB. Neue Möglichkeiten der Datenintegration. Harald Gladytz, Team Vertrieb ESRI Niederlassung Leipzig

Java Frameworks im Vergleich - ADF vs. Grails vs. Spring

Entwicklung von Web-Anwendungen auf JAVA EE Basis

Java 2, Enterprise Edition Einführung und Überblick

Architekturen. Von der DB basierten zur Multi-Tier Anwendung. DB/CRM (C) J.M.Joller

Um asynchrone Aufrufe zwischen Browser und Web Anwendung zu ermöglichen, die Ajax Hilfsmittel DWR ist gebraucht.

Grid-Systeme. Betrachtung verschiedener Softwareplattformen zur Realisierung von Grids und Vorstellung des Globus Toolkit Grid Systeme 1

Softwareentwicklung mit Enterprise JAVA Beans

ORACLE Business Components for Java (BC4J) Marco Grawunder

Betriebskonzept Oracle Collaboration Suite 10g

Entwicklung und Integration mobiler Anwendungen. <Speaker> Oracle Deutschland B.V. & Co. KG

Web Services. XML, WSDL, SOAP und UDDI Einblicke und Ausblicke J.M.Joller 1

.NET-Objekte einfach speichern Michael Braam, Senior Sales Engineer InterSystems GmbH

Die Erkenntnis von gestern muss heute mit einem neuen TEAM - Ihr Partner für IT 2

Application Development Framework (ADF) Teil 1: Überblick Autor(en): Kersten Mebus, Jürgen Menge Oracle Deutschland GmbH

Microsoft.NET und SunONE

OWB 10.2 Experts im Einsatz: Automatisierung von Designschritten bei der Bayer Healthcare AG. Referent: Lutz Bauer, Senior Systemberater, MT AG

Einsatz von Applikationsservern. Untersucht am Beispiel des Sybase Enterprise Application Server

Empfehlungen für erfolgreiche ADF-Projekte. Volker Linz Oracle Deutschland B.V. & Co. KG

Neues von Oracle Gut zu wissen...

Sun ONE. Sun Open Net Environment. Architektur für Web-Services on Demand. Dr. Rainer Eschrich

Einführung mobile Entwicklungsplattform Neptune Application Designer Fink IT-Solutions Christian Fink, Andreas Hofmann

Ora Education GmbH. Lehrgang: Oracle Application Server 10g R2: Administration I

Der IBM Websphere Portalserver

ERP System CATUNO.pro

Cloud Control, Single Sign On in Active Directory Umfeld

Integration von Enterprise Content Management im SAP NetWeaver Portal

Der Java Server beinhaltet Container für EJB, Servlet und JSP, darüber hinaus unterstützt er diejee 1.3 Version.

Java WebApps und Services in der Oracle Cloud

JDO Java Data Objects

Fujitsu BeanConnect TM V3.0 Software 0 FUJITSU LIMITED 2013

Inhaltsverzeichnis. Enterprise Java im Überblick. Technologien der Java2 Enterprise Edition

Von SAP R/3 zu mysap ERP und NetWeaver

Oracle Enterprise Scheduler (ESS) Unleashed Carsten Wiesbaum esentri AG Ettlingen Schlüsselworte Einleitung Oracle Enterprise Scheduler (ESS)

Enterprise Web-SSO mit CAS und OpenSSO

Windows Azure für Java Architekten. Holger Sirtl Microsoft Deutschland GmbH

1. Integration von Liferay & Alfresco 2. Single Sign On mit CAS

Enterprise Application Integration Erfahrungen aus der Praxis

OWASP Stammtisch München Sep 2014 XSS und andere Sicherheitslücken aus der Perspektive des Programmcodes

Internetanbindung von Datenbanken

Das Adapter Framework der SAP Exchange Infrastructure. Holger Kunitz, SAP AG

Effiziente Anwendungs-Entwicklung mittels Business Software Framework BISON Solution

Webinar: Einführung in ICEfaces

Das Application Development Framework (ADF)

Mainframe Internet Integration. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth SS2013. WebSphere Application Server Teil 4

Identity Management. Puzzle mit vielen Teilen. Identity Management Forum München 10. Februar 2004

Content Management mit JSR-170 und dem Open Source CMS Magnolia

Integration einer ADF-Applikation im Forms-Umfeld

Vorteile von Java und Konvergenz Service Creation mit JAIN Network Management mit JMX Fazit

Delivering new, powerful reporting solutions with open source BI Michael Schlenzka, Jaspersoft

Inhaltsverzeichnis. Zusammenfassung Wydler

Dataport IT Bildungs- und Beratungszentrum. HTML- Grundlagen und CSS XML Programmierung - Grundlagen PHP Programmierung - Grundlagen...

5. Programmierschnittstellen für XML

SAP NetWeaver Gateway. 2013

Enterprise Portals: Neue Standards verändern den Markt

Verschiedene Arten des Datenbankeinsatzes

Inhaltsverzeichnis IBM SOFTWARE PRESS

Smartphone Entwicklung mit Android und Java

Oracle ADF Mobile. Jürgen Menge Oracle Deutschland B.V. & Co. KG. Copyright 2012, Oracle and/or its affiliates. All rights reserved.

Control System Studio CSS

Notes2DB. Machen Sie Ihre Notes-Datenbanken relational! Vortragender: Mag. Ing. Johannes Fiala, Fiala Web Development GmbH

Ereignisgesteuertes Ressourcenmanagement mit der Oracle SOA-Suite

Ora Education GmbH. Lehrgang: Oracle Application Server 10g R2: Administration II

Björn Heinemann Leiter Entwicklung Energiewirtschaft

Gut zu wissen... Lorenz Keller Server Technologies Competence Center Nord

<Insert Picture Here> Investitionsschutz und Innovationsdruck: Wie muss eine zukunftssichere Plattform aussehen?

Enterprise Java Beans Einführung

Sind Cloud Apps der nächste Hype?

Weblogic Server: Administration für Umsteiger

Organisation und Systeme SOA: Erstellung von Templates für WebService Consumer und Provider in Java

Ora Education GmbH. Lehrgang: Oracle Application Server 10g R3: Administration

TRAINING. Transbase Training. Transbase Training - Die Kurse in der Übersicht

PRODATIS CONSULTING AG. Folie 1

Jakarta Turbine Ein Open Source Framework fÿr Webanwendungen. KNF Kongre 2001 Henning P. Schmiedehausen

5. Programmierschnittstellen für XML

Überblick Produkte. ORACLE AS 10g R3 JAVA Programming. (5 Tage)

NetWaever-Komponenten

HFT App. Prof. Dr. Gerhard Wanner Michael Kolb B.Sc. Sonntag, 26. Mai 13

DOAG Konferenz Weblogic Server-Administration für Umsteiger

Kommunikationsübersicht XIMA FORMCYCLE Inhaltsverzeichnis

Diplomarbeit: GOMMA: Eine Plattform zur flexiblen Verwaltung und Analyse von Ontologie Mappings in der Bio-/Medizininformatik

Microsoft Azure Fundamentals MOC 10979

Zend PHP Cloud Application Platform

Pervasive.SQL ODBC Treiber. ab ABACUS er-Version Installationsanleitung

XPages. Die neue Web Entwicklung für Lotus Domino. Jens Winkelmann -Senior Software Engineer-

Seminare Softwaretechnik - Einführungsveranstaltung

OSGi-basierte Webapplikationen Ein Erfahrungsbericht

VS12 Slide 1. Verteilte Systeme. Vorlesung 12 Sebastian Iwanowski FH Wedel

ERsB Ergänzungsregister für sonstige Betroffene Eine Dienstleistung des Finanzministeriums

Desktop Management Interface und andere Initiativen der DMTF

+++ Bitte nutzen Sie die integrierte Audio-Funktion von WebEx (Menü Audio -> Integrated Voice Conference -> Start auswählen), um uns zu hören!!!.

Abbildung 3-1: Clients und Server C+S

Business Applika-onen schnell entwickeln JVx Framework - Live!

Neue Dienste und Anwendungen für private, intelligente Kommunikationsnetzwerke

Upgrade-Leitfaden. Apparo Fast Edit 1 / 7

Entwicklung einer mobilen webbasierten Anwendung mit Oracle9i Lite Web-to-Go

BI around the world - Globale Reporting Lösungen bei Continental Automotive

HERZLICH WILLKOMMEN SHAREPOINT 2013 DEEP DIVE - APPS IOZ AG 1

Application Frameworks

Transkript:

KONFERENZ Donnerstag, 11. November 2004 11h00, Variohalle 1 Lotus Notes Integration mit Oracle Applicationsserver Arne Brüning, Christian Kühne ORACLE Deutschland GmbH, Hamburg Schlüsselworte: Lotus Notes, Oracle Database, Oracle Application Server, OracleAS Portal, Oracle JDeveloper, Oracle Application Development Framework, JSR-227 Data Binding, JSR-168 Zusammenfassung Dieser Vortrag gibt die Erfahrungen aus einem Oracle presales Projekt wieder. Die Anbieter wurden aufgefordert, zu demonstrieren wie man eine Anwendung auf einem J2EE-konformen Application Server erstellt, die gleichzeitig auf eine Oracle und eine Lotus Notes Datenbank zugreift. Eine Integration der Lösung in ein Portal-Framework sollte möglich sein, hierbei war der Zugriff auf Lotus Mail und Kalender Funktionalität aus dem Portal notwendig. Da das Thema für das Projektteam neu war, Kenntnisse über Lotus Notes waren bislang nicht vorhanden, wurden viele neue Erfahrungen über die Möglichkeit der Anbindung von Lotus Notes an J2EE-konforme Anwendungen gemacht. Leider waren nicht alle Erfahrungen positv. Daher soll dieser Vortrag aufzeigen, welche Möglichkeiten der Anbindung existieren, aber auch, welche Wege in die Sackgasse führen. Gelöst wurde die Aufgabe letztendlich durch zwei parallele Ansätze: Einsatz der für Lotus Notes vorhandenen Standard-Portles sowie der Modifikation eines generischen Lotus Notes Portlets zusammen mit Oracle Portal Einsatz der Oracle-Implementierung des Java Specification Request JSR-227: A Standard Data Binding & Data Access Facility for J2EE im Oracle Application Development Framework (ADF) Einleitung Häufig besteht das Problem, bestehende Lotus Notes Anwendungen in eine moderne Web-, J2EE- und/oder Portalarchitektur zu überführen. Zur Integration von Lotus Notes gibt es verschiedene Ansätze wie z.b. der Einsatz von

17.Deutsche ORACLE-Anwenderkonferenz Standard-Portlets oder die Erstellung von neuen J2EE-Anwendungen mit dem JDeveloper und dem Oracle Application Development Framework (ADF) unter Verwendung des Lotus Notes Datacontrols. Die verschiedenen Ansätze werden hier vorgestellt, gegeneinander abgewogen und z.t. life gezeigt. Typisches Environment bei mehreren Kunden Gewachsene, meist inhomogene Infrastruktur Eindeutiges, klares Commitment zu J2EE als Zukunftsstandard Vorhandene Datenbestände in Domino, die auf Grund ihrer Integration in Betriebsabläufe nicht kurzfristig migrierbar sind In der Praxis bedeutet dies, daß in den J2EE-konformen Applikationen lesend und schreibend auf in Lotus vorhandene Datenbestände zugegriffen werden muß. Dieser Vortrag gibt die Erfahrungen aus einer Analyse der technischen Möglichkeiten zur Integration wieder. Application Server Datenbank -Standardansatz: frameworkunterstützte Entwicklung gegen Oracle DB Daten aber physisch in externer DB Connectivity via Database Link (hier: DBLink zwischen Oracle und Lotus) Vorteil dieser Lösung ist die Transparenz der Lotus DB, d.h. die Applikation sieht nur die Master-DB (Oracle), obwohl die Daten physisch in Lotus abgelegt werden. Die Funktionalität dieses Ansatzes wird entscheidend von der Qualität des ODBC-Treibers bestimmt. Für nahezu alle relationalen Datenbanken liegen entsprechende Treiber vor; der aktuelle für Lotus vorhandene ODBC-Treiber hat jedoch entscheidene funktionale Einschränkungen, die einer produktiven Nutzung entgegenstehen. J2EE -Standardansatz: JDBC-Treiber Dieser Ansatz ermöglicht die Entwicklung nach dem RAD-Prinzip, da alle modernen J2EE-Entwicklungsumgebungen ein auf JDBC-besierendes Framework zur Verfügung stellen. Die Funktionalität dieses Ansatzes wird entscheidend von der Qualität des JDBC-Treibers bestimmt. Für nahezu alle relationalen Datenbanken liegen entsprechende Treiber vor; der aktuelle für Lotus vorhandene JDBC-Treiber hat jedoch entscheidene funktionale Einschränkungen, die einer produktiven Nutzung entgegenstehen. Dieser Ansatz doppelt die in Lotus gespeicherten Daten in eine Oracle-DB, damit die Applikation ausschließlich gegen die Oracle-DB arbeiten kann.

KONFERENZ Vorteil dieser Lösung ist die Transparenz der Lotus DB, d.h. die Applikation sieht nur die Oracle-DB, obwohl die Master-Daten physisch in Lotus abgelegt werden. Dieser Ansatz wurde bereits von einem Partner erfolgreich in Projekten realisiert. Probleme können auftreten, wenn auf beiden Datenbeständen unabhängig voneinader Änderungen vorgenommen werden können. Darüberhinaus muß die Aufdatierung der Slave-Daten administriert werden. Eine Variante besteht darin, die Daten online in Lotus zurückzuschreiben, da der untersuchte ODBC-Treiber in dieser Richtung für alle untersuchten funktionalen Testfälle arbeitete. Daraus sind keine Ausagen über einen produktiven Einsatz ableitbar. Lotus-nativer -Ansatz Alternativ zu den vorgestellten Treibern steht ein natives Interface in Form einer Java-Bibliothek zur Verfügung (NCSO Notes Client Side Objects). Diese Klassen können in beliebige Java-Applikationen eingebunden werden. Sie ermöglichen den Zugriff auf Lotus via DIIOP (Domino Internet Inter Object Request Broker Protocol) über HTTP. Für die weitverbreiteten Lotus-Anwendungen (email, Kalender, ToDo, Kontakte) stehen fertige Portlets als download auf portalstudio.oracle.com (Teil des Oracle Technology Networks) zur Verfügung. Sie ermöglichen im Umfeld eines Portals den direkten Zugriff auf die entsprechenden Datenbestände in Lotus. Für diese Applikationen ist dies die einfachste Möglichkeit der Integration. Abb. 6: fertige Lotus-Portlets

17.Deutsche ORACLE-Anwenderkonferenz Oracle Portal Integration Solutions stellt einen Provider mit vier Portlets zur Integration der Mail-, Kalender-, Kontakt- und ToDo-Informationen aus dem persönlichen Domino-Postfach des Anwenders. Der Provider nutzt als Protokoll zur Kommunikation mit Lotus eine Dominospezifische iiop-erweiterung (diiop Domino iiop) und http; deshalb müssen die entsprechenden Prozesse auf dem DominoServer laufen (diiop und http). Die mit dem Lotus-Provider ausgelieferten Portlets (email, Kalender, To-Do, Kontakte) greifen auf die User-spezifische Mail-Datenbank mail/<user>.nsf zu. Dabei kümmert sich der Provider in erster Linie um die Kommunikation mit dem Portal (runtime), dem Portlet-Repository, dem SSO-Server und dem Domino-Server. Die Portlets definieren, welche Daten von Domino zu holen sind und wie diese dargestellt werden sollen (rendering). Alle Verwaltungsaufgaben werden vom Provider übernommen, der fertig vorliegt. Der Zugriff auf die Domino-Mail-Datenbank erfolgt mit den IBM-Java-API NotesClientSideObjects (ncso.jar). Application Server Die Authentifizierung erfolgt im Single-Sign-On-Server der OracleAS-Infrastructure. Die dort hinterlegten Zugriffsparameter werden im OracleInternet- Directory gespeichert und ermöglichen dem Anwender die automatische Anmeldung (SSO). Abb. 7: Lotus Provider technische Anbindung Technisch gesehen ist dieses Portlet mit den Lotus-Mail-Portlets verwand; beide nutzen die IBM-Javaklassen zum Zugriff auf die Daten (ncso.jar).

KONFERENZ Es ermöglicht den lesenden Zugiff auf jede beliebige Lotus-View (jede Lotus- Tabelle hat mindestens eine View); dabei können die Zugriffsparameter (Host, Server, Lotus-DB, View) im Customize-Dialog (Edit-Mode) des Portlets eingegeben werden. Darüber hinaus kann der Administrator die zu lesenden/anzuzeigenden Spalten festlegen. [Die Nutzung des Single-Sign-On Servers ist noch nicht realisiert; daher sind b.a.w. auch Nutzername und Password im Customize-Dialog (Edit-Mode) des Portlets einzugegeben] Der Code dieses Portlets steht im Knowledge-Exchange des Portalstudio zur Verfügung. Abb. 8: generic Lortus Provider Die Nutzung des NCSO-APIs ohne entsprechendes Framework ist ähnlich mühsam und aufwändig wie die Nutzung des JDBC-APIs. Der Anwendungsentwickler ist vollständig verantwortlich die Erzeugung und Verwaltung der Verbindung zu Lotus und der Iteration über die entsprechenden Abfragergebnisse.

17.Deutsche ORACLE-Anwenderkonferenz Application Server Abb. 9: NCSO in Servlets, JSPs Abb. 10: NCSO-Aufrufe im Code Der Oracle JDeveloper ermöglicht mit seiner intergrierten Entwicklungsumgebung die besonders einfache Entwicklung von Java-Anwendungen und -Komponenten. Die offene Architektur ermöglicht, weitere Tools wie z.b. Wizards einzubinden (Open add-in API). Hierzu wird der aktuell in Entstehung befindliche Standard JSR-198 unterstützt. Das PDK stellt ein Portal Add-In zur Verfügung, mit dem Portlets im JDeveloper entwicklet werden können.

KONFERENZ Framework -Ansatz Kapselung der Lotus-Zugriffe im Framework Deklarativer Ansatz Volle Ausnutzung der IDE und des Frameworks Um in das Oracle Application Development Framework bislang nicht bekannte Datenquellen einzubinden, muß ein sog. DataControl erstellt werden. Sobald dieses eingebunden wird, stehen alle weiteren Möglichkeiten des Frameworks und der Entwicklungsumgebung auch für diese Datenquelle zur Verfügung. Das Model-View-Controller Pattern ist in der modernen Softwareentwicklung stark verbreite (s. z.b. Gamma: Entwurfsmuster). Abb. 13: Model-View-Controller Architektur Im Oracle Application Development Framework wird das Modell geteilt in das Modell-API und die Implementierung der sog. Business Services welche die eigentlichen Datenquellen repräsentieren. Der kommende Java Standard JSR-227 beschreibt, wie eine Datenquelle an das Modell-API angebunden wird. Auf dieser Basis wurde das Lotus Notes Data- Control für das Framework entwickelt und eingebunden. Sobald das Lotus Notes Data Control in das Application Development Framework eingebunden ist, stehen alle anderen Funktionalitäten der IDE und des Frameworks zur Verfügung, wie z.b. die Data Binding Palette oder die Möglichkeit via Drag and Drop Datenquellen direkt in Oberflächen wie z.b. JSP s einzubinden.

17.Deutsche ORACLE-Anwenderkonferenz Application Server Abb. 16: Visual and Declarative Development Ausblick eine Möglichkeit, wie es weiter gehen kann Bei der bisher vorgestellten Lösung ist es bei gleichzeitigen Zugriffen auf Lotus und Oracle notwendig, daß die Anwendung verteilte Transaktionen koordinieren muß. Eine Lösungsmöglichkeit besteht darin, einen weiteren Layer einzuziehen, der die Transaktionkontrolle übernimmt. Eine weitere sinnvolle Erweiterung wäre, einen Lotus Notes Wizard in den JDeveloper zu integrieren. Dieser kann leicht über das javatools-api (JSR 168, www.javatools.org) eingebunden werden.

Abb. 18: Fazit KONFERENZ