Next: Ergebnis der Untersuchung
Up: Alternative Vorgehensweise: RMI over
Previous: Alternative Vorgehensweise: RMI over
Contents
Da die JMX-Agentenschnittstelle durch das Interface javax.management.MBean Server
beschrieben wird, ist dies der Startpunkt für die Untersuchung, die
im Folgenden dargestellt wird:
- Umschreiben von MBeanServer als eine RMI-Klasse mit Erfüllung
sämtlicher Vorbedingungen für RMI over IIOP
- Kompilieren der Klasse in Java
- Aus der kompilierten Klasse mit dem RMI-Kompiler rmic und den Flags
-idl -iiop entsprechende IDL-Files sowie Skeletons erzeugen,
dabei müssen die Klassen der benötigten Objekte innerhalb der Klasse
MBeanServer ebenfalls entpackt als kompilierte Klassen verfügbar
sein.
- Mit den generierten IDL-Files zu jeder der benutzten JMX Klassen als
auch für die Elemente der JAVA-Bibliotheken wäre jetzt eine Grundlage
vorhanden, entsprechende CORBA Stubs für die ebenfalls durch rmic
generierten Skeletons zu erzeugen.
Bei der Durchführung dieser Schritte treten jedoch eine Vielzahl an
Fehlermeldungen der benutzten Werkzeuge auf, sowohl bei dem
Erzeugen der IDL als auch bei dem Versuch, entsprechende Stubs zu
generieren. Um diesen Weg der automatischen Erzeugung genauer zu untersuchen
und doch durch Modifikationen an eine Lösung zu gelangen, soll eine
Problemeingrenzung und Betrachtung von Teilgebieten (nach dem Prinzip
``teile und herrsche'') getätigt und verschiedene vorhandene
Werkzeuge getestet werden.
Als Mittel der Problemeingrenzung soll eine Betrachtung von lediglich
einzelnen Methoden mit ihren Datentypen als Untersuchungsgrundlage
dienen. Dadurch kann eine Klassifizierung von verschiedenen Problemgruppen
getätigt und die auftretenden Probleme in Teilgebieten einer möglichen
Lösung zugeführt werden. Da das JAVA-IDL-Mapping starken Gebrauch
von Object-By-Value macht, ist eine davon abhängige Klassifizierung
sinnvoll. Die vier Problembereiche sind folgende:
- Einschränkung auf lediglich primitive Datentypen (z.B. String
oder Integer) in den Methoden und Attributen.
- Benutzen von gruppierenden Elementen (Arrays), die durch das
Konstrukt boxedRMI beschrieben werden.
- Einbinden von JMX-Klassen als komplexe Strukturen, die in eigenen
Klassen beschrieben werden (z.B. ObjectName), dabei aber Unterdrückung
der Generierung von Methoden zu den Object-By-Value Klassen
(Schalter -noValueTypes).
- Wie drittens, jedoch Generierung aller so genannten Valuetype
Methoden.
Zusätzlich sollen verschiedene Werkzeuge und CORBA-Implementierungen
für diese Untersuchung benutzt werden. In Frage kommen rmic
als auch der auf JAVA-IDL-Mapping beruhende Compiler java2idl
im Paket zu der kommerziellen CORBA-Implementierung Visibroker
der Firma Visigenic für die Erzeugung von IDL. Für die Generierung
von Stubs zu der erzeugten IDL kamen ebenfalls verschiedene Produkte
zum Einsatz, der Visibroker selbst sowie die freien Implementierungen
ORBacus von IONA oder der JAVA-Compiler idlj zum Gegentesten
in JAVA.
Next: Ergebnis der Untersuchung
Up: Alternative Vorgehensweise: RMI over
Previous: Alternative Vorgehensweise: RMI over
Contents
root
2002-08-11