next up previous contents
Next: 6.6 Klassen des tools Up: 6.5 Implementierung der Agenten Previous: Methode getHostInterfaces() und getIPRouting()

6.5.4 Klasse IPRoutingApplet

  Das IPRouting-Applet erbt vom oben beschriebenen AgentApplet und wird in den Webbrowser des Client geladen, wie in Abschnitt 4.4 beschrieben.
 1  public void init(){
 2    ...
 3    try {
 4      org.omg.CORBA.Object obj= initCORBA("IPRouting");
 5      _ipRouting= IPRoutingHelper.narrow(obj);
 6    }
 7    catch(java.lang.Exception e) {
 8     // error occured during initCORBA()
 9    }
10    ...
11  }
In der init()-Methode wird die Verbindung zum IPRouting-Agenten durch den Aufruf der Methode initCORBA(...) hergestellt (Zeile 4), anschließend folgt das Casting durch die narrow(...)-Methode der Helper-Klasse. Bei _ipRouting handelt es sich um ein Attribut der Klasse und ist vom Typ IPRouting.

Das folgende Programmstück steht innerhalb des Event Handlers des getHosts()-Button und wird ausgeführt, wenn dieser Button gedrückt wird:

 1  HostElement[] hostElement= null;
 2  try {
 3    hostElement= _ipRouting.getHosts();
 4    for (int i= 0;i < he.length; i++)
 5      _resultArea.append(hostElement[i].hostName.toString()+"\n");
 6  }
 7  catch(ResourceException re){
 8     _resultArea.append("ResourceException\n");
 9  }

Über die CORBA-Objektreferenz _ipRouting kann jetzt die Methode getHosts() auf dem IPRouting-Agenten ausgeführt werden (Zeile 3 und Abb. 6.2 Schritt (5)). Das Ergebnis wird in der Variable hostElement gespeichert und in der Textarea _resultArea zur Anzeige gebracht (Zeile 5). Sollte ein Fehler beim Erstellen des HostElement-Feldes aufgetreten sein, wird die Exception im catch-Block (Zeile 7) abgefangen und in der Textarea angezeigt.

Eingebunden wird das IPRouting-Applet in eine entsprechende HTML-Seite:

 1  <html>
 2  <head>
 3  <title>HOMEPAGE des IPRouting-Agenten</title>
 4  </head>
 5  <h1 align=center>
 6  <applet codebase=/proj/fagent/masa_0.2/classes/ 
 7  code=de.unimuenchen.informatik.mnm.masa.agent.\
         iprouting.IPRoutingApplet.class 
 8  width=640 height=250
 9  >
10  </applet>
11  </h1>
12  </html>
Dabei wird in den Zeilen 6 bis 9 das Applet aufgerufen. Die Codebase Der Webserver muß auf die Codebase Zugriff haben.


  
Abbildung 6.3: Das Applet des IPRouting-Agenten
\begin{figure}
 \begin{center}
 
\epsfig {file=Bilder/iproutingApplet.epsi,width=\textwidth}
 \end{center}\end{figure}


next up previous contents
Next: 6.6 Klassen des tools Up: 6.5 Implementierung der Agenten Previous: Methode getHostInterfaces() und getIPRouting()
Copyright Munich Network Management Team