Debug für Services mit dem EGL-Debugger durchführen

Für lokale EGL-Services können Sie das Debug ähnlich wie für andere Programme durchführen.

Voraussetzungen

Sie benötigen einen EGL-Serviceabschnitt sowie einen Anforderer, der Bindungsinformationen für den Zugriff auf den Service besitzt.

Bitte beachten Sie, dass Sie den Service generieren müssen, bevor Sie für einen Web-Service unter WebSphere Application Server ein Debug ausführen können.

Debug für lokalen Service ausführen

Das einfachste Verfahren zum Debug eines Service ist sein Aufruf aus einem Programm, das zu demselben Projekt wie der Service gehört. Anschließend können Sie Testwerte an den Service übergeben und die Ergebnisse untersuchen.

Führen Sie die folgenden Schritte aus:
  1. Erstellen Sie ein neues EGL-Quellenprogramm.
  2. Deklarieren Sie im Programm eine Servicevariable, die auf dem zu testenden Serviceabschnitt basiert.
  3. Erstellen Sie eine Servicebindung im Implementierungsdeskriptor als EGL-Service (nicht als Web-Service) mit dem Protokoll 'local'.
  4. Binden Sie die Variable mit der Servicebindung an den Service.
  5. Nehmen Sie in der Funktion 'main()' des Programms mindestens einen Aufruf an den Server unter Verwendung dieser Variablen vor. Die einfachste Möglichkeit ist die feste Codierung der Eingabewerte im Serviceaufruf und das Schreiben der Ausgabewerte in die Konsole (siehe folgendes Beispiel):
    program addTestProgram type BasicProgram 	 	
    
    myAddingMachine additionService 
       {@BindService {bindingKey = "additionService"}};
    
       function main()
          sumint int;
          sumint = myAddingMachine.addInts(5, 12);
          SysLib.writeStdOut("result = " + sumint);
       end
    end
  6. Legen Sie beim Serviceaufruf einen Unterbrechungspunkt fest. Lesen Sie dazu Unterbrechungspunkte im EGL-Debugger verwenden.
  7. Legen Sie Unterbrechungspunkte im Service wie in anderen Logikabschnitten fest.
  8. Führen Sie das Debug für das neue EGL-Quellenprogramm aus. Führen Sie beim Unterbrechungspunkt vor dem Serviceaufruf eine Step-Into-Aktion für den Service-Code aus. Der Debugger wird an den Unterbrechungspunkten im Service wie in anderen Logikabschnitten angehalten.

Funktionen

Die folgenden Sonderfunktionen sind für EGL-generierte Services oder für Serviceabschnitte verfügbar, die im EGL-Debugger ausgeführt werden:
  • Ferner Zugriff auf VSAM-Dateien unter z/OS
  • Aufrufe an nicht mit EGL generierte Programme, bei denen das Element callLink des Verbindungsoptionsabschnitts die folgenden Einstellungen aufweist:
    • Die Eigenschaft remoteComType ist auf DISTINCT gesetzt.
    • Die Eigenschaft remotePgmType ist auf EXTERNALLYDEFINED gesetzt.
  • Zugriff auf de folgenden Funktionen, die Betriebssystembfehle in der Entwicklungsumgebung ausführen: SysLib.callCmd und SysLib.startCmd.

Details über die Aufgaben, die erforderlich sind, um diese Funktionen verfügbar zu machen, finden Sie unter VSAM-Unterstützung und insbesondere im Abschnitt mit den Voraussetzungen für den Zugriff.


Feedback