Création d'une liaison de données à l'aide d'un script Ant

Vous pouvez utiliser l'assistant de liaison de données CICS/IMS pour créer un script Ant simplement en sélectionnant Sauvegarder la session en tant que script Ant.

Avant de commencer

Tâche de reconnaissance des données

Pourquoi et quand exécuter cette tâche

Lors des étapes d'importation et de génération, l'agent de reconnaissance et l'éditeur de ressource nécessitent que l'utilisateur fournisse un certain nombre de donnée d'entrée. L'agent de reconnaissance et l'éditeur de ressource peuvent être associés de différentes manières pour importer et générer l'artefact souhaité. Ils sont identifiés par leur nom (QName). Par exemple, l'agent de reconnaissance Cobol est identifié par le nom suivant : {com/ibm/adapter}CobolDiscoveryAgent

L'exemple suivant décrit la section de reconnaissance de données du script Ant utilisé pour la génération de liaisons de données J2C :
<?xml version="1.0" encoding="UTF-8" ?>
<project xmlns:adapter="http://com.ibm.adapter" default="DataBinding1" name="/Test1/DFHCOMMAREA.xml">
    <delete file="error.txt"/>
    <property name="debug" value="true"/>
    <property name="project1" value="Test1"/>
    <target name="DataBinding1">
        <adapter:createProject projectName="${project1}" projectType="Java" />
        <adapter:discover>
            <adapter:performImport agent="{com/ibm/adapter}CobolDiscoveryAgent">
                <adapter:importResource>
                    <adapter:propertyGroup name="CobolFileGroup">
                        <adapter:propertyElement name="CobolFile" value="D:\samples\CICS\taderc99\taderc99.cbl"/>
                    </adapter:propertyGroup>
                </adapter:importResource>
                <adapter:queryProperties>
                    <adapter:propertyGroup name="ImportProperties">
                        <adapter:propertyElement name="Platform" value="Win32"/>
                        <adapter:propertyElement name="Codepage" value="ISO-8859-1" />
                        <adapter:propertyElement name="Numproc" value="PFD" />
                        <adapter:propertyElement name="FloatingPointFormat" value="IEEE 754" />
                        <adapter:propertyGroup name="ExternalDecimalSignGroup">
                            <adapter:propertyElement name="ExternalDecimalSign" value="ASCII" />
                        </adapter:propertyGroup>
                        <adapter:propertyGroup name="EndianGroup">
                            <adapter:propertyElement name="Endian" value="Little" />
                            <adapter:propertyElement name="RemoteEndian" value="Little" />
                        </adapter:propertyGroup>
                        <adapter:propertyGroup name="CompileOptions">
                            <adapter:propertyElement name="Quote" value="DOUBLE" />
                            <adapter:propertyElement name="Trunc" value="STD" />
                            <adapter:propertyElement name="Nsymbol" value="DBCS" />
                        </adapter:propertyGroup>
                    </adapter:propertyGroup>
                </adapter:queryProperties>
                <adapter:queryResult>
                    <adapter:selectElement name="DFHCOMMAREA" />
                </adapter:queryResult>
            </adapter:performImport>
            <adapter:writeToWorkspace writer="{com/ibm/adapter/cobol/writer}JAVA_WRITER">
                <adapter:propertyGroup name="COBOLToJavaResourceWriter">
                    <adapter:propertyGroup name="Java Type Name">
                        <adapter:propertyElement name="Project Name" value="${project1}"/>
                        <adapter:propertyElement name="Package Name" value="sample.mm"/>
                        <adapter:propertyElement name="Class Name" value="DFHCOMMAREA"/>
                        <adapter:propertyElement name="Overwrite existing class" value="true"/>
                        <adapter:propertyElement name="GenerationStyle" value="Default" />
                    </adapter:propertyGroup>
                </adapter:propertyGroup>
            </adapter:writeToWorkspace>
        </adapter:discover>
        <eclipse.refreshLocal depth="infinite" resource="${project1}" />
        <eclipse.incrementalBuild project="${project1}" />
        <condition property="errorexist">
            <available file="error.txt" property="errorexist"/>
        </condition>
        <fail if="errorexist" message="BUILD Failed: please see workspace log file or error.txt for details."/>
    </target>
</project>

Voici les détails des deux tâches définies dans le script :

Procédure

  1. Le script Ant signale un message LA GENERATION A ECHOUE dans l'état global si une tâche Ant échoue. Un fichier error.txt signale l'échec si l'erreur est propagée jusqu'à nos tâches Ant.
  2. performImport
    • importResource est la ressource à importer, par exemple une source COBOL.
    • queryProperties est une liste de paramètres qui représentent les informations requises pour créer une requête.
    • importResource est la ressource à importer, par exemple une source COBOL.
    • queryResult représente les noeuds sélectionnés dans l'arborescence de résultats, destinés à être importés en tant qu'artefacts d'application.
    • propertyGroup est la structure contenant les propriétés et leurs valeurs.
  3. writeToWorkspace
    • workspaceResourceWriter est le nom de l'éditeur utilisé pour générer les artefacts d'application.
    • propertyElement est une liste (paires de propriétés nom/valeur) utilisée par l'éditeur pour la génération.

Commentaires