Aufrufstubgenerator über eine Ant-Task aufrufen

Sie können den COBOL-Aufrufstubgenerator über eine Ant-Task aufrufen.

Vorbereitende Schritte

Erstellen Sie ein Projekt in Rational Application Developer für den Code, der vom COBOL-Aufrufstubgenerator generiert wird.

Erstellen Sie eine Konfigurationsdatei für den Aufrufstubgenerator. Stellen Sie sicher, dass die Einstellungen für die erforderlichen Eigenschaften "EclipseHome", "WorkSpace" und "EclipseProjectName" korrekt sind.

Überprüfen Sie die Anweisung PROCEDURE für die COBOL-Quellendatei.

Informationen zu diesem Vorgang

Zum Ausführen des COBOL-Aufrufstubgenerators über eine Ant-Task müssen Sie eine <csg>-Task erstellen, die Werte für erforderliche Attribute angibt, die die Konfigurationsdatei des Aufrufstubgenerators und die COBOL-Quellendateien identifizieren, die als Quelle für den Aufrufstubgenerator verwendet werden. Sie können auch Werte für optionale Attribute in der Task angeben. Tabelle 1 beschreibt die unterstützten Attribute <csg>, <cobolModule> und <dataElement> und die verschachtelten Elemente, die Sie in der Task <csg> verwenden können.

In einigen Attributen <csg> und verschachtelten Elementen können Sie Eigenschaften des internen Aufruf-Stub-Generators als Substitutionsvariablen angeben. Für das Element <callStubPackage> können sie die COBOL-Programm-ID angeben:
<callStubPackage>com.ibm.cobol.$_ProgramId_$</callStubPackage>
Zur Laufzeit wird die Variable $_ProgramId_$ durch die COBOL-Programm-ID ersetzt. Wenn mehrere COBOL-Dateien mit der Eingabe <fileset> oder <filelist> angegeben werden, wird $_ProgramId_$ durch die Programm-ID jeder COBOL-Datei ersetzt, wenn der Aufrufstubgenerator über die Eingabedateiliste iteriert.
Tabelle 1. <csg>-Attribute und -Elemente für die Ausführung des COBOL-Aufrufstubgenerators. Sie müssen Werte für die erforderlichen Attribute und Elemente in der Task <csg> angeben. Viele optionalen Attribute und Elemente haben einen Standardwert.
Name Standardwert Erforderlich oder optional Beschreibung
<csg>-Attribute und verschachtelte Elemente
configFile   Erforderlich Gibt den vollständig qualifizierten Pfad zur Konfigurationsdatei des Aufrufstubgenerators an.
workSpace   Optional Gibt den vollständig qualifizierten Pfad zum Stammverzeichnis von Rational Application Developer bzw. zum Eclipse-Arbeitsbereich an, das bzw. der verwendet werden soll, um die Java™-Klasse für Datenbindungen zu erstellen.

Alle Werte, die für "workSpace" angegeben werden, überschreiben die WorkSpace-Werte in der Konfigurationsdatei des Aufrufstubgenerators, die mit dem configFile-Wert angegeben ist.

eclipseProjectName   Optional Gibt den Namen des Projekts in Rational Application Developer bzw. des Eclipse-Arbeitsbereichs an, das bzw. der als Ausgangsposition für die generierte Java-Klasse dient.

Das Projekt muss vorhanden sein, bevor der Aufrufstubgenerator ausgeführt wird.

Alle Werte, die für "eclipseProjectName" angegeben werden, überschreiben die EclipseProjectName-Werte in der Konfigurationsdatei des Aufrufstubgenerators, die mit dem configFile-Wert angegeben ist.

antBuildFile ${workSpace}/${eclipseProjectName}/src/GenAllBindings.xml Optional Gibt die Ausgabeposition für die Ant-Builddatei des Datenbinders an, die von der Task <csg> generiert wird.
<fileset>, <filelist>   Erforderlich Gibt eine oder mehrere COBOL-Quellendateien an, die Eingaben für den Aufrufstubgenerator enthalten. Sie können mehrere <fileset>- und <filelist>-Typen angeben. <fileset>- und <filelist>-Typen, die außerhalb eines Elements <cobolModule> angegeben werden, verwenden die COBOL-Programm-ID als COBOL-Modulnamen.
<cobolModule>   Optional Gibt den Namen des COBOL-Moduls bzw. der DLL-Datei an, das bzw. die allen <fileset>- und <filelist>-Dateien zugeordnet sind, die im Element <cobolModule> verschachtelt sind. Sie können mehrere Elemente <cobolModule> angeben.
<callStubPackage>   Erforderlich Gibt den Paketnamen und den Dateipfad der generierten Datei an, die für den generierten Aufrufstub verwendet werden soll.

Für dieses Element können Sie eine interne Eigenschaft des Aufrufstubgenerators für die Substitutionsvariablen $_ProgramId_$, die COBOL-Programm-ID oder $_CobolModule_$, das COBOL-Modul, angeben.

Beispiel: <callStubPackage>com.ibm.cobol.$_ProgramId_$</callStubPackage>

Zur Laufzeit wird die Variable $_ProgramId_$ durch die COBOL-Programm-ID ersetzt.

<callStubClass> Programm-ID des COBOL-Programms Optional Gibt den für den generierten Aufrufstub zu verwendenden Klassennamen an.

Für dieses Element können Sie eine interne Eigenschaft des Aufrufstubgenerators für die Substitutionsvariablen $_ProgramId_$, die COBOL-Programm-ID oder $_CobolModule_$, das COBOL-Modul, angeben.

<build> Unbekannter Build Optional Gibt eine benutzerdefinierte Build-ID an.
<mockPackage>   Optional Gibt den Namen des Pakets für die Testklasse an.
<mockClass>   Optional Gibt den Namen der Klasse an, die für das Testharness verwendet werden soll.
<dataElementsPackage> {callStubPackage}.parameters Optional Gibt den Paketnamen an, der für die Datenbindungsklassen eines oder mehrerer COBOL-Parameter verwendet werden soll, und den Rückgabewert an.

Für dieses Element können Sie eine interne Eigenschaft des Aufrufstubgenerators für die Substitutionsvariablen $_DataElementName_$ (COBOL-Parametername), $_ProgramId_$ (COBOL-Programm-ID) oder $_CobolModule_$ (COBOL-Modul) angeben.

<dataElementsClass> Parametername Optional Gibt den Klassennamen an, der für die Datenbindungsklassen eines oder mehrerer COBOL-Parameter verwendet werden soll, und den Rückgabewert an.

Für dieses Element können Sie eine interne Eigenschaft des Aufrufstubgenerators für die Substitutionsvariablen $_DataElementName_$ (COBOL-Parametername), $_ProgramId_$ (COBOL-Programm-ID) oder $_CobolModule_$ (COBOL-Modul) angeben.

Beispiel für das Voranstellen der Programm-ID vor den Klassennamen für die COBOL-Parameter und den Rückgabewert: <dataElementsClass>$_ProgramId_$_$_DataElementName_$</dataElementsClass>

Zur Laufzeit wird die Variable $_ProgramId_$ durch die COBOL-Programm-ID ersetzt, und die Variable $_DataElementName_$ durch den Namen des COBOL-Parameters oder den Rückgabewert. Wenn das COBOL-Programm mehrere Parameter hat, wird $_DataElementName_$ durch den Namen jedes COBOL-Parameters ersetzt, wenn der Aufrufstubgenerator durch diese iteriert.

<dataElement>   Optional Gibt einen Paket- und einen Klassennamen für einen COBOL-Parameter oder Rückgabewert an. Der Parameter wird mit den Attributen "name" und "programId" angegeben. Die Paket- und Klassennamen werden mit den Attributen "packageName" und "className" angegeben. Sie können mehrere Elemente <dataElement> angeben.
<cobolModule> - Attribute und verschachteltes Element
libname Programm-ID des COBOL-Programms Optional Gibt den Namen des COBOL-Moduls bzw. der DLL-Datei an, das bzw. die mindestens ein COBOL-Programm enthält.
<fileset>, <filelist>   Erforderlich Gibt eine oder mehrere COBOL-Quellendateien an, die Eingaben für den Aufrufstubgenerator enthalten. Jeder COBOL-Datei wird das COBOL-Modul zugeordnet, das mit libname definiert ist.
Attribute vom Typ <dataElement>
name   Erforderlich Gibt den Namen des COBOL-PROCEDURE-Parameters an.
programId   Erforderlich Gibt die Programm-ID des COBOL-Programms an, das den Parameter enthält.
packageName ${callStubPackage}.parameters Optional Gibt den Paketnamen an, der für die Datenbindungsklasse für diesen COBOL-Parameter oder Rückgabewert verwendet werden soll.

Für dieses Attribut können Sie eine interne Eigenschaft des Aufrufstubgenerators für die Substitutionsvariablen $_DataElementName_$ (COBOL-Parametername), $_ProgramId_$ (COBOL-Programm-ID) oder $_CobolModule_$ (das COBOL-Modul) angeben.

className Parametername Optional Gibt den Klassennamen an, der für die Datenbindungsklasse für diesen speziellen COBOL-Parameter bzw. Rückgabewert verwendet werden soll.

Für dieses Attribut können Sie eine interne Eigenschaft des Aufrufstubgenerators für die Substitutionsvariablen $_DataElementName_$ (COBOL-Parametername), $_ProgramId_$ (COBOL-Programm-ID) oder $_CobolModule_$ (das COBOL-Modul) angeben.

Vorgehensweise

  1. Definieren Sie eine Ant-<csg>-Task für die Ausführung des Aufrufstubgenerators.

    Der Aufrufstubgenerator stellt eine Ant-Beispielbuilddatei mit dem Namen CSG.xml bereit, die Sie ändern und verwenden können. Weitere Informationen finden Sie im Artikel zur Datei CSG.xml des Aufrufstubgenerators.

  2. Verwenden Sie eine Ant-Builddatei für die Ausführung des Aufrufstubgenerators.

    Die Ant-Builddatei startet den Datenbinder und generiert die Datenbindungsklassen für einen oder mehrere COBOL-Parameter und einen Rückgabewert. Die Ant-Builddatei für den Datenbinder wird in der letzten Zeile mit der <ant>-Task ausgeführt.

    Der folgende Code führt den Aufrufstubgenerator mit der <csg>-Task aus:

    <!-- Deklaration der <csg>-Task -->
    <taskdef resource="com/ibm/ws/batch/cobol/ant/callstub/antlib.xml"
             classpath="${csgDir}/lib/COBOLCallStubGenerator.jar"/>
    
    <csg configFile="${csgDir}/csg.properties" antBuildFile="${antBuildFile}" >
    
      <!-- Gültige Eingaben sind <fileset> und <filelist>. In diesem Beispiel wird eine einzige Datei verwendet.-->
    <fileset file="${cobolSource}" />
    
    <!-- Paket für die generierte Java-Aufrufstubklasse angeben.
         Die Parameterklassen werden unter ${callStubPackage}.parameters generiert. -->
      <callStubPackage>${callStubPackage}</callStubPackage>
      
    </csg>
    
    <!-- Ant-Builddatei für Datenbinder, die von der <csg>-Task generiert wird, ausführen. -->
    <ant antfile="${antBuildFile}" />

    In diesem Beispiel wird ein <fileset>-Typ verwendet, um eine einzige COBOL-Eingabequellendatei anzugeben. Als Eingabe für <csg> verwendete COBOL-Quellendateien werden mit einem oder mehreren <fileset>- oder <filelist>-Typen angegeben. Das verschachtelte Element <callStubPackage> ist erforderlich. Das Element gibt das Paket an, das für den Java-Aufrufstub zu verwenden ist. Die Datenbindungsklassen werden standardmäßig unter dem Paket ${callStubPackage}.parameters generiert.

    Das folgende Beispiel enthält eine vollständige Beschreibung der <csg>-Task:

    <taskdef resource="com/ibm/ws/batch/cobol/ant/callstub/antlib.xml"
             classpath="${csgDir}/lib/COBOLCallStubGenerator.jar"/> 
    
    <csg configFile="#REQUIRED"
         workSpace="#OPTIONAL:overrides value in configFile"
         eclipseProjectName="#OPTIONAL:overrides value in configFile"
         antBuildFile="#OPTIONAL:default=${workSpace}/${eclipseProjectName}/src/GenAllBindings.xml" >
    
      <fileset />
    <filelist />
    
    <cobolModule #OPTIONAL libname="#OPTIONAL:default=${ProgramId}">
      <fileset />
      <filelist />
    </cobolModule>
    
      <callStubPackage>#REQUIRED</callStubPackage>
    <callStubClass>#OPTIONAL:default=${ProgramId}</callStubClass>
    
    <build>#OPTIONAL:default=”Unknown Build”</build>
    <mockPackage>#OPTIONAL</mockPackage>
    <mockClass>#OPTIONAL</mockClass>
    
      <dataElementsPackage>#OPTIONAL:default=${callStubPackage}.parameters</dataElementsPackage>
      <dataElementsClass>#OPTIONAL:default=${dataElementName}</dataElementsClass>
    
      <dataElement #OPTIONAL
                   name="#REQUIRED" 
                   programId="#REQUIRED" 
                   packageName="#OPTIONAL:default=${callStubPackage}.parameters" 
                   className="#OPTIONAL:default=${dataElementName}" />
    </csg>
    Bewährtes Verfahren Bewährtes Verfahren: Die <csg>-Task und Ant-Builddatei für den Datenbinder weisen Laufzeitabhängigkeiten von einigen Eclipse-Klassen auf, einschließlich der J2C-Tools (Java EE Connector). Führen Sie die <csg>-Task in Rational Application Developer als Ant-Build aus, um alle Voraussetzungen abzurufen. Sie können auch die Datei CSG.xml verwenden, um den Aufrufstubgenerator in Rational Application Developer auszuführen. Weitere Informationen finden Sie im Artikel zum Aufrufen des Aufrufstubgenerators über die grafische Schnittstelle.bprac

Ergebnisse

Der Befehl führt den Aufrufstubgenerator aus. Wenn der Befehl erfolgreich ist, erstellt der Aufrufstubgenerator einen Java-Aufrufstub, um ein COBOL-Programm auszuführen.

Nächste Schritte

Verwenden Sie den generierten Java-Aufrufstub, um ein COBOL-Programm auszuführen.


Symbol, das den Typ des Artikels anzeigt. Taskartikel



Symbol für Zeitmarke Letzte Aktualisierung: 25.05.2016
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tgrid_cobol_csg_ant
Dateiname:tgrid_cobol_csg_ant.html