Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
sistenz der Eigenschaften kann durch<br />
Einbettung unmittelbar in die HTML-<br />
Seite oder das asynchrone Nachladen<br />
über eigenständige Datendateien realisiert<br />
werden.<br />
ActiveX ist für die abgegrenzte<br />
Funktionalität eines komplexen Bildschirmelementes<br />
mit Dialogführung im<br />
Inter-/Intranet gut geeignet, so die allgemeine<br />
Einschätzung auf der OOP ’<strong>97</strong>.<br />
Skripten-Sprachen ermöglichen die<br />
Verknüpfung innerhalb einer HTML-<br />
Seite und die zum Teil unterschiedliche<br />
Integration auf verschiedenen Seiten.<br />
Unternehmensweite Dokumentenserver<br />
sind denkbar. Kritisch scheint noch<br />
der Zusammenhalt über die Skripten-<br />
Sprache zu sein, da bei komplexeren Anforderungen<br />
leicht die Übersicht verlorengeht.<br />
Verteilte Objekte, ob<br />
Geschäftsprozeß- oder statische fachliche<br />
Objekte sind mit ActiveX nicht unmittelbar<br />
realisierbar. Hier bietet allerdings<br />
die verteilte OLE-Automation<br />
eine interessante Perspektive.<br />
� Java über Corba verteilen<br />
Die Vorteile einer verteilten Java-<br />
Applikation liegen eigentlich auf der<br />
Hand. Bei der Entwicklung verteilter<br />
Software gibt es jedoch noch Probleme.<br />
Im Java Developer Kit finden sich in den<br />
dort ausgelieferten Klassenbibliotheken<br />
Sockets für die Netzwerk-Programmierung<br />
und Klassen zum Zugriff auf Internet-Server.<br />
Sockets gelten aber als eine<br />
zu wenig abstrakte Art der Kommunikation.<br />
Eine weitere Alternative ist<br />
Remote Method Invocation (RMI). Mit<br />
RMI lassen sich JavaObjekte über Prozeß-<br />
und Rechnergrenzen hinweg aufrufen.<br />
Weil RMI sich nahtlos in Java integriert,<br />
steht der Entwickler einem<br />
Objektmodell gegenüber, das sich von<br />
dem für lokale Objekte kaum unterscheidet.<br />
Vorteilhaft ist aber, daß Sun<br />
das API (Application Programming Interface)<br />
für RMI als Standardbibliothek<br />
in Java integriert. Der Nachteil besteht<br />
darin, daß RMI momentan nur innerhalb<br />
von Java funktioniert, auch wenn<br />
für die Zukunft eine Brücke zu C++ geplant<br />
ist. Eine Kommunikation mit anderen<br />
Objekten unterstützt RMI hingegen<br />
nicht. Da Java eine<br />
objektorientierte Sprache ist, erscheint<br />
der Corba-Standard der OMG als die geeignete<br />
Lösung. Mit Corba läßt sich<br />
nicht nur eine transparente Verteilung<br />
von Java-Objekten über das Netz realisieren,<br />
sondern auch der Zugriff auf be-<br />
liebige andere Corba-Objekte, unabhängig<br />
von der Programmiersprache.<br />
Corba-Objekte werden über ihre<br />
Schnittstellendefinition bekannt gemacht.<br />
Ein IDL-Compiler bildet die<br />
IDL-Dateien auf Java-Klassen ab. In<br />
diesen Klassen findet die Kommunikation<br />
zwischen dem Java-Applet und den<br />
eigentlichen Corba-Objekten transparent<br />
statt. Der Zugriff auf Corba-Objekte<br />
kann daher genauso erfolgen wie der<br />
Zugriff auf alle anderen Java-Objekte.<br />
Allerdings ist die Abbildung von IDL<br />
auf Java noch nicht standardisiert.<br />
Neben den Corba-Objekten gibt es<br />
weitere Funktionalitäten wie ,,Naming<br />
Services“, um Objekte anhand eines<br />
Namens zu lokalisieren. Auch hierfür<br />
stellen die verfügbaren Corba/Java-Lösungen<br />
spezielle Java-Klassen bereit.<br />
Zum Lokalisieren von Corba-Objekten<br />
aus Java-Applikationen und zum<br />
Versenden von Methodenaufrufen und<br />
Ergebnissen ist ein Corba-konformer<br />
Broker notwendig. Der ließe sich<br />
grundsätzlich als separater Hintergrundprozeß,<br />
der permanent auf eingehende<br />
Aufträge wartet oder als Menge<br />
dynamisch ladbarer Java-Klassen implementieren.<br />
Java-Applets innerhalb<br />
von Web-Browsern gehören zu der<br />
zweiten Kategorie.<br />
Mit einer Kombination aus Java und<br />
Corba lassen sich Internet und Unternehmensnetze<br />
zu einem einheitlichen<br />
Gesamtsystem vereinigen. Java erlaubt<br />
durch plattformunabhängigen Bytecode<br />
Portabilität von Anwendungen<br />
über Systemarchitekturen hinweg, weiterhin<br />
die Mobilität von Code durch Laden<br />
von Applets über das Netz. Corba<br />
wiederum erlaubt einer Java-Applikation,<br />
entfernte Dienste in Anspruch zu<br />
nehmen. Ein weiterer Vorteil ergibt sich<br />
bei der Implementierung sogenannter<br />
Three-Tier-Architekturen. Diese setzen<br />
sich aus drei Schichten zusammen: dem<br />
Datenbanksystem, den eigentlichen Benutzerapplikationen<br />
und in der Mitte<br />
den verteilten Business-Objekten. Für<br />
letztere ist Corba als Verteilmechnismus<br />
bestens geeignet. Vorteilhaft sind<br />
auch die Gemeinsamkeiten der Objektmodelle<br />
von Corba und Java, beispielsweise<br />
das Interface-Konzept. Dadurch<br />
ist es möglich, das Objektmodell von<br />
Corba fast nahtlos in Java umzusetzen.<br />
Corba und Java scheinen also in vielerlei<br />
Hinsicht geradezu füreinander geschaffen<br />
zu sein, und Java soll auch der Open-<br />
Doc-Technologie neuen Auftrieb verleihen.<br />
❏<br />
<strong>monitor</strong> 4/<strong>97</strong> 67