Zugunsten der Internet-Technologie soll Windows sterben

Projekt Cherokee macht Oracles Tools Web-fähig

01.12.2000
FELLBACH (CW) - Mit seinen Tools beschreitet Oracle den Weg in Richtung Internet-Unterstützung konsequent weiter. "Forms" wird in der nächsten Version nur noch das Web unterstützen, und der Nachfolger ist schon in Arbeit. Das Projekt "Cherokee" soll die Entwicklung von Browser-Oberflächen verbessern.

Geht es nach dem Willen von Oracle, dann haben Windows-Clients bald ausgedient. Die Strategie des Anbieters ist klar: Der Web-Browser ist die Oberfläche der Wahl, die Anwendungslogik wird auf dem Internet-Applikations-Server, in der aktuellen Version "Oracle 9i AS" (IAS), betrieben und die Datenspeicherung erfolgt in der bevorzugt hauseigenen Datenbank.

Auch "Forms", Oracles Standardwerkzeug für die Entwicklung von Datenbankanwendungen, wird konsequent auf diese Strategie ausgerichtet. Mit Version 7 wird nicht mehr der Windows-Client unterstützt, sondern nur noch der Java-fähige Browser. Dass das vielen Anwendern nicht recht ist, zeigte sich auf dem Jahreskongress der Deutschen Oracle Anwendergruppe (Doag). Die Zuhörerschaft stöhnte bei dieser Ankündigung merklich. Zu viele Änderungen an den Tools in der letzten Zeit war einer der Hauptkritikpunkte an Oracles Tool-Strategie. Auch bei der Qualität muss der Softwarehersteller noch zulegen. Die Zahl der Bugs in den Produkten ist den Anwendern noch viel zu groß. Zumindest beim Investitionsschutz kommt Oracle den Anwendern entgegegen. Auf dem Doag-Kongress hat das Oracle-Management zugesichert, Forms 6i werde noch bis 2008 weiter gepflegt.

Forms ist Teil einer ganzen Palette von Tool-Produkten des Datenbankherstellers. Daneben gibt es noch Werkzeuge für die modellbasierte Entwicklung wie Oracle Developer und Oracle Designer. Zur Erstellung von Java-Anwendungen, die zum Beispiel in Oracles Applikations-Server oder direkt in der Datenbank als Stored Procedure ablaufen können, dient die "J-Developer-Suite". Für das Publishing, also beispielsweise die Erstellung einfacher Reports, ist das Werkzeug "Reports" vorgesehen. Nicht zuletzt unterstützt der Hersteller auch die Entwicklung von Websites und Portalen mit "Web DB".

Als langjährige Standardentwicklungsumgebung bringt Forms einige Altlasten mit sich. Insbesondere bei der Integration in Web-Technologien musste Oracle mit Blick auf andere Clients wie Windows Kompromisse machen. Für den Web-Einsatz wird ein mit 800 Kilobyte relativ großes Java-Applet benötigt, das die Präsentation auf dem Client übernimmt. Es stellt die gesamte Oberfläche einer Anwendung dar, also Menüs, Masken und Ähnliches. Die damit generierten Oberflächen lassen sich daher nicht ohne weiteres in andere Web-Seiten einbinden.

Diese Nachteile will Oracle mit dem Projekt Cherokee überwinden. Das Tool erstellt Benutzeroberflächen, die sich in normale Web-Seiten einbauen lassen, also unter anderem auch in die mit Web DB erstellten Portale. Durch die Nutzung moderner Browser-Technologien und einer optimierten Kommunikation zwischen Browser und Applikations-Server geht es über klassische HTML-Anwendungen hinaus. Zu den Eigenschaften von Cherokee gehören zum Beispiel die Aktualisierung von Teilen eines Fensters, ohne dass die Seite neu geladen werden muss. So lassen sich etwa Tabellen sortieren und Felder validieren. Das Ergebnis der Sortierung oder der Überprüfung sorgt dafür, dass nur die Liste oder das Feld aktualisiert wird. Dabei finden die dafür notwendigen Operationen auf dem Server statt.

Bei der Entwicklung von Cherokee steht die Web-Architektur von Forms Pate. So dient bei Cherokee der Client nur als Präsentationsmedium. Dort wird keine Logik hinterlegt. Die Darstellungsinformationen und die Geschäftslogik residieren auf dem Applikations-Server. Die Kommunikation zwischen Server und Browser übernimmt auf Client-Seite ein Applet, das rund 150 KB umfasst. Es dient auch als Schnittstelle zum Browser über das "Document Object Model" (DOM) und besitzt ein Servlet-Pendant auf dem Applikations-Server, mit dem es kommuniziert.

DOM ermöglicht gerade die selektive Aktualisierung einzelner Fensterinhalte, ohne dass die gesamte Seite neu aufgebaut werden muss. Der Java-Client empfängt vom Server die für eine Aktualisierung benötigten Informationen, zum Beispiel eine neue Tabelle oder eine darzustellende Nachricht, und übergibt sie an den Browser. Der übernimmt die Präsentation, also das Rendering, und baut nur den Teil eines Fensters neu auf, der betroffen ist. Das ist schneller getan, als die ganze Seite zu aktualisieren.

Die Nutzung von DOM ist also vorteilhaft, hat jedoch ihre Tücken. Microsofts Browser "Internet Explorer" unterstützt DOM Level-1 nur unvollständig. Und auch "Netscape Navigator" integriert erst mit Version 6 das Modell. Durch Microsofts Sonderweg bei DOM muss Oracle zwei Versionen seines Applets pflegen. Die Cherokee Services auf dem Applikations-Server prüfen, um welchen Client es sich handelt, und senden das notwendige Applet.

Das Applet bringt noch einen weiteren Vorteil: Die Kommunikation ist wesentlich effizienter als in klassischen Web-Infrastrukturen. Wie bei Forms werden zwischen Server und Client nämlich nicht alle Daten ausgetauscht, zum Beispiel eine Maskenoberfläche, sondern nur Aktualisierungen, also quasi die Differenz zu den schon übermittelten Daten. Das verringert die Netzlast und beschleunigt die Abwicklung. So könnten von einer Liste, dem Ergebnis eines Datenbank-Querys, nur die ersten 20 von 5000 Einträgen transferiert werden. Weitere Einträge folgen, wenn auf dem Client nach unten gescrollt wird. Da die Technologie aus Forms stammt, ist sie auch schon entsprechend erprobt. Der Datenaustausch erfolgt über HTTP, beziehungsweise abgesichert mit HTTPS oder über Secure Sockets Layer (SSL) 3.0.

Während das Geheimnis von Cherokee im Client liegt, passiert die Arbeit wie gewohnt auf dem Server. Im Oracle Internet Application Server Enterprise Edition werden die Cherokee Services enthalten sein. Dort wird sowohl die Darstellung hinterlegt als auch die Geschäftslogik ausgeführt. Hierzu nutzt Oracle Standardtechnologien wie Java Server Pages (JSP) und Servlets.

Die Darstellung von Cherokee-Inhalten basiert auf HTML. Das Werkzeug wird selbst einige Templates für bestimmte Einsatzgebiete mitbringen. Es ist aber auch möglich, mit einem beliebigen Autorenwerkzeug oder Oracle Web DB ein Web-Angebot zu designen und nur an einzelnen Stellen auf Cherokee-Inhalte zu verweisen. Solche Komponenten heißen Layout-Container und umfassen zum Beispiel Tabellen, Masken und Ähnliches. Technologisch nutzt Oracle hier JSP-Files, die die statischen HTML-Informationen sowie Verweise auf Layout-Container enthalten.

Die eigentliche Logik einer Anwendung wird in Binarys abgespeichert und durch die "Cherokee Engine" ausgeführt. Diese ist außerdem dafür zuständig, die Verbindung zur Datenbank herzustellen und die Metadaten zu erstellen, die der Client für die Darstellung benötigt. Für die Entwicklung der Business-Logik können bestehende Entwicklungswerkzeuge genutzt werden. So kann zum Beispiel das Java-Entwicklungswerkzeug J-Developer Java-Code generieren, zum Beispiel Enterprise Javabeans. Auch bestehende Forms-Anwendungen lassen sich weiter nutzen. Oracle wird hierfür ein Migrationswerkzeug zur Verfügung stellen, das solche Anwendungen in die Cherokee-Welt überführt.

Auf dem Server werden auch alle Aktionen ausgeführt, die der Client für einen Layout-Container anstößt. Soll zum Beispiel eine Tabelle nach einem neuen Kriterium sortiert werden, so führt der IAS den entsprechenden Query auf die Datenbank aus und übergibt dem Client das Ergebniss. Dadurch können auch rechenintensive Prozesse hochperformant abgewickelt werden.

Ähnlich sieht das bei Feldprüfungen aus. Springt der Cursor in ein neues Feld, kann dessen Inhalt an den Server übermittelt und validiert werden. Je nach Ergebnis sendet er eine Fehlermeldung zurück oder akzeptiert die Eingabe. Die Technologie erlaubt auch, Server-getriggerte Ereignisse auf dem Client auszugeben. Beispielsweise könnte eine Meldung abgesetzt werden, wenn ein neuer Finanz-Report eingetroffen ist.

Das Projekt Cherokee soll Mitte nächsten Jahres fertig sein. Das Tool wird als Bestandteil der "Oracle 9i Developer Suite", dem Nachfolger der "Internet Developer Suite", ausgeliefert. Die Server-Komponenten werden Bestandteil des "Oracle 9i Application Server Release 2" sein.

Stärkere Orientierung an neuen Web-Technologien und Integration in fremde Web-Anwendungen sind auch Designziele bei dem Publishing-Werkzeug "Reports 7", dem Nachfolger des aktuellen Reports 6. Mit der nächsten Version wird es möglich sein, Ausgaben auch in Web-Seiten zu integrieren, die mit Werkzeugen von anderen Anbietern erzeugt wurden. Daneben liefert der Hersteller auch ein eigenes Autorenwerkzeug zur Gestaltung von Web-Seiten mit und stellt Basis-Templates zur Verfügung. Außerdem kommt Reports 7 mit Unterstützung für JSP. Damit lassen sich Server-seitig dynamische Inhalte realisieren. Außerdem können Fremdinhalte integriert werden.

Eine weitere Neuerung sind "Pluggable Data Sources" für den Datenzugriff, die die bestehende Datenbank-Schnittstelle ablösen. Mit ihnen ist es möglich, auf viele verschiedene Datenquellen konkurrierend zuzugreifen. Neben der Oracle-eigenen Datenbank können das andere Datenbanken sein, die über JDBC angesprochen werden, XML-Quellen, Daten aus Oracle Express oder eigene Datenquellen.

Die Integration in das Oracle-Portal "Web DB" bringt außerdem einige Erleichterungen in der Administration und im Handling mit sich. So wird Single-sign-on unterstützt, das heißt, ein Anwender, der sich am Portal angemeldet hat, erhält automatisch seine Zugriffsrechte für Reports zugewiesen. Außerdem lassen sich die darzustellenden Informationen in die persönliche Web-Oberfläche einbauen. Auch Reports 7 wird im Sommer 2001 fertiggestellt.

Oracle-Anwender müssen sich also darauf einstellen, ihre Architektur in das Internet zu migrieren. Bei allen Entwicklungswerkzeugen ist die Strategie klar: Das Frontend der Zukunft ist der Browser. Und auch der Applikations-Server lebt zunehmend von Internet-Technologien wie Enterprise Javabeans und JSP. Eile ist beim Umstieg aber nicht geboten. Dass bewährte Technologien nämlich auch bei den Oracle-Entwicklern einen hohen Stellenwert genießen, zeigt eine Anekdote am Rand: Die Scripting-Sprache im Projekt Cherokee ist die proprietäre Datenbankprogrammmiersprache PL/SQL.

Doag entwickelt EigenlebenDie Deutsche Oracle Anwendergruppe (Doag) wird künftig auf eigenen Füßen stehen. Nachdem der Softwarehersteller die Anwendervereinigung jahrelang personell unterstützt und seit kurzem auch finanziell gefördert hat, werden die Bande nun gelöst. Zum Beispiel hatte eine Oracle-Mitarbeiterin einige Sekretariatsdienste übernommen und sich unter anderem weitgehend um die Organisation des jährlichen Doag-Kongresses gekümmert. Das entfällt in Zukunft - nicht zuletzt auf Druck des US-Headquarters. In den USA ist das Verhältnis zwischen den unabhängigen User-Organisationen und dem Unternehmen gespannt. Insbesondere möchte Oracle seine eigenen Veranstaltungen wie die Oracle Openworld fördern, was auf Kosten der Konferenzen geht, die von den unabhängigen Anwendervereinigungen ausgerichtet werden.

Auch die erst rund zwei Jahre alten finanziellen Vereinbarungen zwischen Doag und Oracle wurden rückgängig gemacht. Der Softwareanbieter hat in dieser Zeit rund 20 Prozent des Doag-Etats bestritten. Das Geld fällt aber nicht gänzlich weg. Von nun an muss Oracle für Dienstleistungen, die es von der Anwendergruppe in Anspruch nimmt, einzeln zahlen. Hierzu gehören zum Beispiel Anzeigen in der Mitgliederzeitung "Doag News" oder die Teilnahme am Jahreskongress, wenn keine Vorträge gehalten werden.

Interimsweise unterhält die Doag nun ein eigenes Sekretariat in Berlin. Geplant ist ein Büro an einem anderen Standort, wahrscheinlich in München. Auch neue Services für die Mitglieder sollen aufgebaut werden, zum Beispiel ein virtuelles Office als Anlaufstelle für Mitglieder im Web. Dank stark gestiegener Mitgliederzahlen in diesem Jahr braucht sich der Verein um die Finanzierung keine Sorgen zu machen.

Außerdem erschließt sich der Verein eine neue Einnahmequelle durch einen Service für Oracle-Partner. Da der Softwarehersteller selbst auf der CeBIT nicht mehr vertreten sein wird, organisiert die Doag einen Partnerstand in Halle 4. Damit sollen mittelständische Anbieter von Oracle-Lösungen weiterhin die Gelegenheit erhalten, sich auf der Messe zu präsentieren.

Oracle dagegen setzt 2001 auf die in Berlin stattfindende Openworld als zentrale deutsche Veranstaltung. Anders als in den USA soll darunter aber der Doag-Kongress nicht leiden, der wegen der großen Zahl von Teilnehmern im nächsten Jahr nach Mannheim umziehen wird. Skepsis, ob sich die Pläne so erfüllen, ist aber angebracht. Oracle rechnet mit bis zu 10000 Teilnehmern in Berlin. Auf dem diesjährigen Doag-Kongress waren es rund 1000. Außerdem ist fraglich, ob die Vortragenden aus den Oracle-Entwicklungsabteilungen im nächsten Jahr zweimal den Sprung über den Teich antreten oder sich nicht doch auf die hauseigene Veranstaltung konzentrieren. Auf der amerikanischen Tagung der Oracle Application User Group (Oaug) war die Zahl der Oracle-Teilnehmer in diesem Jahr, in dem der Kongress gegen die Openworld antreten musste, deutlich zurückgegangen.

Abb.1: Datenaustausch ist reduziert

Server und Client tauschen nur Metadaten aus. Die HTML-Generierung erfolgt auf dem Client. Quelle: Oracle

Abb.2: Datenzugriff bei Reports 7

Pluggable Data Sources verbinden Reports mit beliebigen Daten. Quelle: Oracle

Abb.3: Drei-Schichten-Architektur

Seitenlayout und Geschäftslogik sind auf dem Server hinterlegt. Quelle: Oracle