jsp-develop.de presents:

JSP meets Middleware (Grundlagen)

von shark,  06.07.2001 16:08:55

Middleware Systeme sind in vielen Unternehmen die Basis für die Abwicklung des täglichen Geschäftsbetriebes. Systeme wie CORBA (Common Object Request Broker Architecture) und DCOM (Entirex) bilden die Brücke zwischen Applikationen unterschiedlicher Hersteller und sind die Grundlage für den Bereich Enterprise Application Integration (EAI). DCOM (Distributed Component Object Model), die Middleware Lösung von Microsoft, war zuerst nur auf Windows Systemen verfügbar. Die Software AG hat DCOM lizenziert und auf UNIX/Mainframe Systeme portiert. DCOM ist Teil der Distributed Network (Internet) Architecture (DNA) von Microsoft, welche in COM+ mündet und von .NET abgelöst werden soll.

CORBA wurde/wird als herstellerunabhängige Middleware von der Object Management Group (OMG) spezifiziert und vorangetrieben. CORBA macht als mögliche Plattform für das E-Business Sinn, wenn man den Verbreitungsgrad und die Reife dieser Technologie betrachtet. CORBA ist eine ernstzunehmende Alternative zu Application Servern und Enterprise Java Beans (EJB).

Kommerzielle CORBA Systeme wie Orbix von IONA Technologies oder VisiBroker von Borland (vormals Inprise) erfreuen sich großer Beliebtheit und bilden oft das Rückrat innerhalb der Unternehmen. Im Open Source Bereich hat sich MICO (MICO Is COrba) durchgesetzt. Für die Integration von Anwendungen die in einer anderen Programmiersprache als Java entwickelt wurden, sollte man eine kommerzielle CORBA Implementierung verwenden. Neben den gängigen Programmiersprachen wie C/C++ gibt es mittlerweile auch Language Mappings für COBOL und andere Exoten.

Bleibt man im Java Bereich, so ist die mögliche Wahl die Referenzimplementierung von Sun Microsystems (TM) zu verwenden. Die Referenzimplementierung wird neben kommerziellen CORBA Systemen oft etwas stiefmütterlich behandelt, ist aber im JDK bereits enthalten. Nicht erschrecken! Es ist die Wahrheit! Der CORBA ORB ist bereits Teil der Referenz-implementierung. Mit dem Aufruf: "tnameserv -ORBInitialPort 1050" startet man den CORBA Naming Service der Referenzimplementierung.

Der ORB ist zuständig auf Anfrage eines CORBA Clients die Objektreferenz eines CORBA Servers an den Client zu übermitteln, damit der Client die Services (Methoden) des CORBA Servers aufrufen kann. Damit ein CORBA Client mit einem Server über Rechnergrenzen hinweg kommunizieren kann, muss man mit dem IDL Compiler einen Client- und Server-Stub erzeugen. Die Stubs regeln, transparent für den Programmierer, die Kommunikation zwischen dem Client und dem Server über das Netzwerk hinweg. IDL steht für Interface Definition Language und ist eine Metasprache für die Definition der Schnittstelle zwischen einem Client und einem Server. IDL ist unabhängig von Programmiersprachen, sodass ein Java Client mit einem C++ Server kommunizieren kann, sofern das entsprechende Language Mapping vorhanden ist.

Der IDL Compiler von Sun Microsystems (TM) "idltojava" ist durch die neuere Version "idlj" abgelöst worden (Bestandteil des JDKs 1.3).

Weitere Informationen zu dem Thema IDL und IDL Compiler findet man über den Link: http://java.sun.com/products/jdk/idl/

Hersteller unabhängige Informationen zu CORBA findet man über die beiden Links: http://www.corba.org und http://www.omg.org

Informationen zu Orbix gibt's bei: http://www.iona.com und zu VisiBroker bei: http://www.borland.com/visibroker

Die CORBA Implementierung MICO erreicht man über den Link: http://www.mico.org

Der zweiten Teil des Artikels wird von einem CORBA Beispiel handeln.
URL dieses Beitrags:
http://www.jsp-develop.de/forumbeitrag/view/117/