Construction de beans Java J2C à l'aide de l'importateur par lots

Vous pouvez créer des classes de liaison J2C et y accéder par le biais de l'importateur par lots, une interface de ligne de commande, à la place de l'assistant de liaison de données J2C. Vous pouvez exécuter cet importateur par lots à partir du plan de travail.

L'importateur par lots vous permet de créer des classes de liaison J2C pour les adaptateurs de ressources de l'interface ECI CICS et IMS. Vous pouvez créer des classes de liaison J2C et y accéder par le biais de l'importateur par lots, une interface de ligne de commande, à la place de l'assistant de liaison de données J2C. Vous pouvez exécuter cet importateur par lots à partir du plan de travail.
Migration de scripts Ant V6 vers la nouvelle version J2C V7 : Les produits de développement d'applications Rational V7.0 contiennent une nouvelle fonction d'enregistrement de session qui génère des scripts Ant. Un outil de migration est mis à votre disposition pour convertir vos scripts Ant V6 dans le nouveau format Ant J2C V7. Ces nouveaux scripts Ant sont plus flexibles et faciles à utiliser, et il est donc recommandé de les utiliser.

Comment exécuter l'outil de migration

  1. Remplacez source par l'ancien fichier script Ant V6 à migrer.
  2. Exécutez le fichier migration.xml dans le plan de travail, ou utilisez le mode headless pour l'exécuter via une ligne de commande.
    <?xml version="1.0" encoding="UTF-8"?>
    <project name="Migration" default="default" xmlns:j2c="http://com.ibm.adapter.j2c">
    		 <-- 
    		 		 Le chemin du fichier source doit être un chemin d'espace de travail relatif ou un chemin de système de fichiers absolu.
    		 		 Le fichier d'origine (source) sera renommé avec l'extension .bak.
    		  -->
     		 <target name="default">
    		 		 <j2c:migrate source="/Script/batchImport_deprecated.xml"/>
    		 </target>
    </project>

Utilisation des scripts de l'importateur par lots

  1. Vous devez modifier les paramètres de cinq fichiers pour les adapter à votre environnement. Ces fichiers se trouvent dans <répertoire_installation>\IBM\SDP70Shared\plugins/com.ibm.adapter/j2c.commad_6.1.0*/runtime et <répertoire_installation>\IBM\SDP70Shared\plugins/com.ibm.adapter/j2c.commad_6.1.0*/sample/batch_import. Les cinq fichiers sont les suivants :
    1. CICSECI_PlatformProperties.xml : ce fichier définit les paramètres du fichier source C ou COBOL qui sera appelé par défaut, selon la plateforme qui est utilisée pour exécuter l'importateur par lots (NT, AIX ou MVS).
    2. CICSECI_cobolSample.xml : ce fichier comporte les propriétés du service utilisé par l'importateur par lots :
      • EISProject
        • name : nom du projet de service qui comprendra le nouveau service de l'entreprise. Si ce projet de service n'existe pas, il sera créé automatiquement.
          Remarque : Le fichier exemple contient un élément ImportPropertyArray dans la propriété EISProject. Les propriétés d'importation contenues ici vont remplacer toute valeur définie dans le fichier PlatformProperties.xml. Si les valeurs par défaut de ce dernier sont correctes pour ce service, vous pouvez alors supprimer l'élément ImportPropertyArray.
      • EISService (notez qu'il est possible de définir plusieurs éléments de cette propriété pour chaque propriété EISProject) :
        • name : nom du service d'entreprise. Suite à l'importation des fichiers C ou COBOL, trois fichiers WSDL seront créés pour chacun des services (un fichier d'interface, un fichier de liaison. et un fichier de service).
        • type : nom de l'adaptateur de ressources utilisé pour le service. Il s'agit du nom du projet du connecteur qui comporte un fichier RAR.
        • targetNameSpace : URL de l'espace de nom cible (http://...). Un package sera par ailleurs créé dans le projet de service en ce basant sur cet espace de nom cible pour contenir les fichiers WSDL générés.
        • generateHelpers : si les données natives que vous importez correspondent à des types de données complexes tels que les structures dans C, les classes auxiliaires sont alors requises lors de l'exécution du service. Si cette option est définie sur "true", le programme d'importation par lots créera et compilera automatiquement ces classes.
      • Operation : (notez qu'il est possible de définir plusieurs éléments de cette propriété pour chaque propriété EISService):
        • name : nom de l'opération.
        • type : type d'opération. Ce peut être REQUEST_RESPONSE ou ONE_WAY.
          Remarque : Une opération de type ONE_WAY doit comprendre une définition de message d'entrée alors qu'une opération de type REQUEST_RESPONSE doit comprendre une définition de message d'entrée et une définition de message de sortie. Si ces deux dernières définitions sont du même type, une seule définition regroupant message d'entrée et de sortie est utilisée.
      • ...Message
        • importFile : nom du fichier contenant la définition servant pour la création de l'opération du service d'entreprise. Ce peut être un fichier source C ou COBOL.
        • importDirectory : chemin contenant le fichier d'importation. Si son attribut n'est pas défini, le répertoire d'entrée et le répertoire de travail seront utilisés pour rechercher le fichier d'importation.
        • nativeTypeName : nom du type de données à importer à partir du fichier d'importation. Dans COBOL par exemple, ce nom est certainement DFHCOMMAREA. S'il n'est pas identifié comme un type de données valide après analyse syntaxique d'importFile, une erreur sera renvoyée.
        • name : nom à utiliser pour le type qui est importé. Si DFHCOMMAREA représente des données client par exemple, vous pouvez attribuer le nom Client.
        • generationPackage : attribut facultatif qui vous permet de définir un nom de package différent pour les classes auxiliaires créées (soit les et les gestionnaires de format). Vous obtenez ainsi un espace de nom différent pour le schéma généré dans le fichier WSDL d'interface.
    3. sampleContainer.xml : ce fichier sera transmis en tant qu'argument à l'importateur par lots. Il comprend une liste des fichiers (ImportDefinitions) devant être traités. L'élément ImportDefinitionArray a les attributs suivants :
      • platform : cela renvoie à la plateforme pour le système hôte. Elle peut avoir les valeurs suivantes : NT, AIX ou OS390.
      • platformProperties : définit le nom du fichier de propriétés de la plateforme.
    4. importBatch.bat (win) ou importBatch.sh (linux) : il s'agit du fichier programme de l'importateur par lots avec les paramètres suivants :
      • containerFile : fichier défini à l'étape c.
      • Paramètres facultatifs
        • generationStyle
          • 0 : paramètre par défaut, qui correspond au style de WebSphere Studio V5.0.
          • 1 : correspond aux options de génération VisualAge® for Java™ : directe, sans notification, sans classe interne, sans abréviation de noms, avec des tableaux de type primitif.
          • 2 : correspond aux options de génération VisualAge for Java : directe, sans notification, sans classe interne, avec abréviation de noms, avec des tableaux de type primitif.
        • workspace : nom de chemin qualifié complet de l'espace de travail à utiliser pour l'importation.
        • RAD_installdir : répertoire dans lequel Rational Application Developer est installé.
    5. Fichier source C ou COBOL: vous utiliserez ce fichier COBOL (TADERC99.ccp) ou C pour créer les fichiers de liaison de données et les fichiers d'interface via l'importateur par lots.
  2. Exécution de l'importateur par lots à partir de la ligne de commande. Suivez la procédure ci-dessous pour appeler l'importateur par lots à partir de la ligne de commande.
    1. Assurez-vous d'avoir bien importé dans votre espace de travail l'adaptateur de ressources que vous souhaitez utiliser.
    2. Créez un répertoire dans lequel vous mettrez en attente les fichiers mentionnés à l'étape 1. Les étapes restantes feront référence à ce répertoire en tant que inputdir.
    3. Définissez la langue et les propriétés de connexion pour votre système hôte dans le fichier de propriétés d'une plateforme. Copiez le fichier de propriétés de plateforme approprié (CICSECI_PlatformProperties.xml ou IMS_PlatformProperties.xml) à partir du répertoire %PROGRAMFILES%/IBM/SDP70Shared/plugins/com.ibm.adapter.j2c.command_6.1.0/sample/batch_import (où x correspond au répertoire dans lequel vous avez installé votre logiciel Rational) vers inputdir, puis ouvrez-le à l'aide d'un éditeur de texte. Définissez ensuite dans ce fichier les propriétés par défaut de votre environnement cible. Toute propriété définie dans ce fichier peut être remplacée dans le fichier de définitions de service décrit à l'étape suivante. Il n'est pas nécessaire de supprimer les définitions de plateformes non utilisées.
    4. Copiez le fichier exemple de définitions de service approprié (CICSECI_cSample.xml, CICSECI_cobolSample.xml ou IMS_cobolSample.xml) dans inputdir en le renommant comme vous le souhaitez.
    5. Copiez le fichier conteneur exemple, sampleContainer.xml, dans inputdir en le renommant comme vous le souhaitez. Ouvrez-le avec un éditeur de texte, définissez la plateforme appropriée et, pour chaque définition de service créée à l'étape d, ajoutez un élément ImportDefinition renvoyant au fichier de définitions de service que vous avez créé.
    6. Si une instance de Rational Application Developer utilisant l'espace de travail est en cours de fonctionnement, fermez-là.
    7. A partir de la ligne de commande, appelez la commande importBatch avec les options suivantes : importBatch -file=containerFile [-style=generationStyle] [-d workspace] [-e RAD_installdir]
      Remarque : Le paramètre -file doit avoir un chemin complet du système de fichiers pour le fichier containerFile.
  3. Exécution de l'importateur par lots à partir du plan de travail. Suivez la procédure ci-dessous pour appeler l'importateur par lots à partir du plan de travail.
    1. Assurez-vous d'avoir bien importé dans votre espace de travail l'adaptateur de ressources que vous souhaitez utiliser.
    2. Créez un projet simple (nommez-le Temp) dans lequel vous mettrez en attente les fichiers mentionnés à l'étape 1. Les étapes restantes feront référence à ce répertoire en tant que inputdir.
    3. Effectuez l'étape c, l'étape d et l'étape e de la procédure Exécution de l'importateur par lots à partir de la ligne de commande.
    4. Copiez le fichier batchImport.xml à partir du répertoire %PROGRAMFILES%/IBM/SDP70Shared/plugins/com.ibm.adapter.command_6.0.0/script vers inputdir. Modifiez le fichier exemple sampleContainer.xml pour qu'il corresponde au nom de votre fichier conteneur.
    5. Cliquez avec le bouton droit de la souris sur l'option de sélection de batchImport.xml Exécuter > 2 Ant build". Dans la fenêtre qui vient de s'ouvrir, sélectionnez JRE puis Exécuter dans le même JRE que l'espace de travail. Cliquez sur Appliquer puis sur Fermer. Vous n'aurez à effectuer cette étape qu'une seule fois.
    6. Cliquez avec le bouton droit de la souris sur batchImport.xml puis sélectionnez Exécuter > 1 Ant build.

      L'importateur par lots va importer les fichiers COBOL et C et créer les fichiers de liaison de données dans le projet (EISProject) et le package (tiré de targetNameSpace) définis dans le fichier XML.

      Remarque : L'importateur par lots appelé à partir de la ligne de commande suit le même processus d'exécution que lorsqu'il est exécuté depuis l'espace de travail. A titre d'exemple, ouvrez l'espace de travail dans lequel les fichiers de l'étape 1 ont été créés. Vous verrez un projet nommé Temp contenant les mêmes fichiers que ceux importés manuellement à l'étape 3.

Vos commentaires