< Précédent | Suivant >

Leçon 3 : Créer une méthode Java

La leçon 3 vous guide à travers la création d'une méthode Java™.
Avant de commencer, vous devez effectuer la Leçon 2 : Configurer un projet Web, et une interface et des implémentations Java.
Dans cette leçon, vous
  1. Vous créez maintenant une méthode Java qui utilise l'importateur COBOL pour mapper les types de données entre la source COBOL et les données de votre méthode Java. Ouvrez la vue Fragments en cliquant sur Fenêtre > Afficher la vue > Fragments. Dans la vue Fragments, cliquez sur J2C.
  2. Cliquez avec le bouton droit sur Ajouter une méthode à un bean Java J2C et sélectionnez Insérer.
  3. Sur la page Nouvelle méthode Java, cliquez sur Ajouter.
  4. Dans la zone Nom, tapez getCustomerInfo.
  5. Dans cette étape, vous importez le fichier taderc25.cbl (COBOL) qui est nécessaire pour créer votre application. Le fichier taderc25.cbl se trouve dans <rép_install >IBM/IBMIMShared/plugins/com.ibm.j2c.cheatsheet.content/Samples/CICS/taderc25, où <rép_install> représente le répertoire dans lequel ce produit est installé. Le fichier COBOL contient le programme qui s'exécute sur le serveur CICS. Il contient la définition de la structure à passer au serveur CICS via la zone des communications (COMMAREA). Cette structure représente les enregistrements de client qui sont retournés à partir de l'application CICS. Avant de pouvoir travailler avec un fichier, vous devez l'importer depuis le système de fichiers dans le plan de travail. A côté de la zone Type d'entrée, cliquez sur Nouveau.
  6. Dans la page Importation des données, vérifiez que la zone Sélectionnez un mappage est COBOL vers Java. Cliquez sur Parcourir à côté du fichier COBOL.
  7. Recherchez le fichier taderc25.cbl dans le système de fichiers et cliquez sur Ouvrir.
    taderc25.cbl
          identification division.
           program-id. TADERC25.
           environment division.
           data division.
           working-storage section.
           01 tmp pic a(40).
           01  ICOMMAREA.
               02  ICustNo    PIC X(5).
               02  Ifiller    PIC X(11).
           01  GENCUST.
               02  GCUSTCODE PIC X(4).
               02  GFILLER PIC X(40).
           01  PREFCUST.
               02  PCUSTCODE PIC X(4).
               02  PCUSTNO    PIC X(5).
               02  ASSETS  PIC S9(6)V99.
           01  REGCUST.
               02  RCUSTCODE PIC X(4).
               02  RCUSTNO    PIC X(5).
               02  ACCOUNTNAME PIC A(10).
               02  BALANCE PIC S9(6)V99.
           01  BADCUST.
               02  BCUSTCODE PIC X(4).
               02  BCUSTNO    PIC X(5).
               02  DAYSOVERDUE PIC X(4).
               02  AMOUNT PIC S9(6)V99.
           LINKAGE SECTION.
           01 DFHCOMMAREA.
              02 inputfield pic x(50).
           procedure division.
           start-para.
               move DFHCOMMAREA to ICOMMAREA.
               IF ICustNo EQUAL '12345'
                  move 'PREC' to PCUSTCODE
                  move ICustNo to PCUSTNO
                  move 43456.33 to ASSETS
                  move PREFCUST TO DFHCOMMAREA
               ELSE IF ICustNo EQUAL '34567'
                       move 'REGC' to RCUSTCODE
                       move ICustNo to RCUSTNO
                       move 'SAVINGS' TO ACCOUNTNAME
                       move 11456.33 to BALANCE
                       move REGCUST TO DFHCOMMAREA
                    ELSE
                       move 'BADC' to BCUSTCODE
                       move ICustNo to BCUSTNO
                       move '132' to DAYSOVERDUE
                       move -8965.33 to AMOUNT
                       move BADCUST TO DFHCOMMAREA
          *         END-IF.
               END-IF.
               EXEC CICS RETURN
               END-EXEC.
  8. Cliquez sur Suivant.
  9. Dans la page Importateur COBOL, sélectionnez une structure de données de communication :
    1. Sélectionnez Win32 pour Nom de la plateforme.
    2. Sélectionnez ISO-8859-1 pour Page de codes.
    3. Cliquez sur Requête.
    4. Sélectionnez ICOMMAREA pour Structures de données.
  10. Cliquez sur Suivant.
  11. Dans la page Sauvegarde des propriétés :
    1. Sélectionnez Par défaut pour Style de génération.
    2. Cliquez sur Parcourir pour choisir le projet Web Taderc25Sample.
    3. Dans la zone Nom du package, tapez sample.cics.data
    4. Dans la zone Nom de la classe, la valeur par défaut est ICOMMAREA ; remplacez-la par InputComm.
  12. Cliquez sur Terminer.
  13. Dans la zone Spécifier le type d'entrée/sortie de la page Méthode Java, cliquez sur Nouveau à côté de la zone Type de sortie.
  14. Dans la page Importation des données, vérifiez que la zone Sélectionnez un mappage est COBOL_MPO_TO_JAVA.
  15. Cliquez sur Nouveau à côté de la zone correspondant à plusieurs sorties possibles.
  16. Cliquez sur Parcourir à côté de la zone Nom du fichier Cobol, et recherchez l'emplacement du fichier taderc25.cbl. Cliquez sur Ouvrir.
  17. Cliquez sur Suivant.
  18. Dans la page Importateur COBOL, sélectionnez une structure de données de communication :
    1. Sélectionnez Win32 pour Nom de la plateforme.
    2. Sélectionnez ISO-8859-1 pour Page de codes.
    3. Cliquez sur Requête.
    4. Sélectionnez PREFCUST, REGCUST et BADCUST pour Structures de données.
  19. Cliquez sur Terminer. Sur la page Spécifiez les propriétés de configuration d'importation des données, vous voyez la liste des trois types de données.
  20. Cliquez sur Suivant.
  21. Dans la page Sauvegarde des propriétés, vous pouvez voir les valeurs par défaut définies pour chacun des enregistrements de type de client. Vérifiez que Taderc25Sample apparaît dans la zone Nom du projet. Cliquez sur Parcourir et choisissez le projet Web Taderc25Sample.
    1. Dans la page Spécifiez les propriétés de sauvegarde, mettez en évidence Type de conteneur COBOL MPO.
      • Tapez sample.cics.data dans la zone Nom du package.
      • Tapez OutputComm dans la zone Nom de la classe.
      • Vous pouvez sélectionner Remplacer la classe existante.
    2. Développez Propriétés de sauvegarde COBOL MPO vers Java. Les trois éléments de liaison de données apparaissent.
    3. Mettez en évidence Propriétés de sauvegarde COBOL vers Java pour "PREFCUST" dans le fichier taderc25.cbl
      • Pour Style de génération, sélectionnez Par défaut.
      • Tapez sample.cics.data dans la zone Nom du package.
      • Tapez PrefCust dans la zone Nom de la classe.
      • Vous pouvez sélectionner Remplacer la classe existante.
    4. Mettez en évidence Propriétés de sauvegarde COBOL vers Java pour "REGCUST" dans le fichier taderc25.cbl
      • Tapez sample.cics.data dans la zone Nom du package.
      • Tapez RegCust dans la zone Nom de la classe.
      • Vous pouvez sélectionner Remplacer la classe existante.
    5. Mettez en évidence Propriétés de sauvegarde COBOL vers Java pour "BADCUST" dans le fichier taderc25.cbl
      • Tapez sample.cics.data dans la zone Nom du package.
      • Tapez BadCust dans la zone Nom de la classe.
      • Vous pouvez sélectionner Remplacer la classe existante.
  22. Cliquez sur Terminer. Développez OutputComm : vous pouvez voir qu'elle contient PrefCust, RegCust et BadCust dans la zone Type de sortie.
  23. Dans la page Méthode Java, cliquez sur Terminer.
  24. Dans la page Méthodes Java :
    1. Tapez TADERC25 (l'ID du programme COBOL) dans la zone functionName.
    2. Sélectionnez Afficher les options avancées.
    3. Sélectionnez SYNC_SEND_RECEIVE(1) dans la zone interactionVerb.
    4. Tapez -1 dans la zone replyLength.
  25. Cliquez sur Terminer.
  26. Comme la sortie qui revient peut être de l'un des trois types, la seule façon d'y correspondre est de disposer de certains modèles prédéfinis dans le flux de données. La méthode de correspondance vérifie le modèle de reconnaissance.

    Ajout de balise de doclet pour le modèle de reconnnaissance

    1. Pour ajouter le modèle de reconnaissance pour PrefCust :
      • Ouvrez le fichier PrefCust.java dans un éditeur Java.
      • Accédez à la méthode getPcustcode(). La meilleure façon de faire cela est d'ouvrir la vue Structure et de faire défiler vers le bas jusqu'à trouver la méthode souhaitée.
      • Dans la zone des commentaires de la méthode, ajoutez la balise @type-descriptor.recognition-desc pattern="PREC" ; vous pouvez aussi utiliser l'assistant de contenu en appuyant sur CTRL+Espace et en faisant défiler la liste vers le bas pour rechercher la balise puis en entrant "PREC" comme modèle.
      • Enregistrez les modifications ; le code PrefCust.java est généré à nouveau.
      • Accédez à la méthode de correspondance pour vérifier que la modification s'y trouve :
        /**
        	 * @generated
        	 
        	 */
        	public boolean match(Object obj) {
        		if (obj == null)
        			return (false);
        		if (obj.getClass().isArray()) {
        			byte[] currBytes = buffer_;
        			try {
        				byte[] objByteArray = (byte[]) obj;
        				buffer_ = objByteArray;
        				if (!("PREC".equals(getPcustcode().toString())))
        					return (false);
        			} catch (ClassCastException exc) {
        				return (false);
        			} finally {
        				buffer_ = currBytes;
        			}
        		} else
        			return (false);
        		return (true);
        	}

    2. Pour ajouter le modèle de reconnaissance pour RegCust :
      • Ouvrez le fichier RegCust.java dans un éditeur Java.
      • Accédez à la méthode getRcustcode(). A nouveau, la meilleure façon de faire cela est d'ouvrir la vue Structure et de faire défiler vers le bas jusqu'à trouver la méthode souhaitée.
      • Dans la zone des commentaires de la méthode, ajoutez la balise @type-descriptor.recognition-desc pattern="REGC" ; vous pouvez aussi utiliser l'assistant de contenu en appuyant sur CTRL+Espace et en faisant défiler la liste vers le bas pour rechercher la balise puis en entrant "REGC" comme modèle.
      • Enregistrez les modifications ; le code RegCust.java est généré à nouveau.
      • Accédez à la méthode de correspondance pour vérifier que la modification s'y trouve :
        /**
        	 * @generated
        	 
        	 */
        	public boolean match(Object obj) {
        		if (obj == null)
        			return (false);
        		if (obj.getClass().isArray()) {
        			byte[] currBytes = buffer_;
        			try {
        				byte[] objByteArray = (byte[]) obj;
        				buffer_ = objByteArray;
        				if (!("REGC".equals(getRcustcode().toString())))
        					return (false);
        			} catch (ClassCastException exc) {
        				return (false);
        			} finally {
        				buffer_ = currBytes;
        			}
        		} else
        			return (false);
        		return (true);
        	}
    3. Pour ajouter le modèle de reconnaissance pour BadCust :
      • Ouvrez le fichier BadCust.java dans un éditeur Java.
      • Accédez à la méthode getBcustcode(). A nouveau, la meilleure façon de faire cela est d'ouvrir la vue Structure et de faire défiler vers le bas jusqu'à trouver la méthode souhaitée.
      • Dans la zone des commentaires de la méthode, ajoutez la balise @type-descriptor.recognition-desc pattern="BADC" ; vous pouvez aussi utiliser l'assistant de contenu en appuyant sur CTRL+Espace et en faisant défiler la liste vers le bas pour rechercher la balise puis en entrant "BADC" comme modèle.
      • Enregistrez les modifications ; le code BadCust.java est généré à nouveau.
      • Accédez à la méthode de correspondance pour vérifier que la modification s'y trouve :
        /**
        	 * @generated
        	 
        	 */
        	public boolean match(Object obj) {
        		if (obj == null)
        			return (false);
        		if (obj.getClass().isArray()) {
        			byte[] currBytes = buffer_;
        			try {
        				byte[] objByteArray = (byte[]) obj;
        				buffer_ = objByteArray;
        				if (!("BADC".equals(getBcustcode().toString())))
        					return (false);
        			} catch (ClassCastException exc) {
        				return (false);
        			} finally {
        				buffer_ = currBytes;
        			}
        		} else
        			return (false);
        		return (true);
        	}
< Précédent | Suivant >

Commentaires