Rubrique précédente: Enregistrement de la passerelle de transaction CICS (ECI)Rubrique suivante: Enregistrement de RFC SAP via JCo


Enregistrement d'images de service IMS Connect

Pour enregistrer des images de service IMS Connect :

  1. Avant de lancer l'enregistreur, ajoutez les propriétés suivantes dans local.properties, le cas échéant :

    Ainsi, les réponses binaires qui représentent des messages d'accusé de réception (sans données de charge utile) seront omises du traitement de copybook.

  2. Dans l'onglet Basics (Paramètres de base) de l'enregistreur d'image de service virtuel, sélectionnez IMS Connect comme protocole de transport.
  3. Remplissez les champs dans l'onglet Basics (Paramètres de base) et cliquez sur Next (Suivant).

    L'étape suivante de l'enregistreur s'ouvre.

  4. Entrez les informations du port et de l'hôte :
    Listen/Record on port (Port d'écoute/enregistrement)

    Permet de définir le port sur lequel le client communique avec DevTest.

    Target host (Hôte cible)

    Permet d'indiquer le nom ou l'adresse IP de l'hôte cible sur lequel le serveur est exécuté.

    Target port (Port cible)

    Permet de définir le numéro du port cible écouté par le serveur. Si vous prévoyez de sélectionner un style d'authentification directe proxy, laissez ce champ vide.

    Valeur par défaut : 80 (HTTP) et 443 (HTTPS)

    IMS Format File (Fichier au format IMS)

    Définissez l'un des éléments suivantsv:

    • Le nom du fichier prenant en en charge les demandes d'IMS Connect qui utilisent l'en-tête de 160 octets utilisé par l'exemple d'application IBM
    • Un en-tête de 80 octets

    Les définitions de champ pour les en-têtes de 160 octets et 80 octets pris en charge sont fournies dans le fichier ims.format disponible dans le répertoire LISA_HOME.

    Pour utiliser la prise en charge d'IMS Connect fournie avec DevTest par défaut, laissez ce champ vide.

    Character Set (Jeu de caractères)

    Définit la méthode de codage des données par l'application à virtualiser.

    Valeurs :

    • ASCII - CP1252
    • EBCDIC - CP037
  5. Pour afficher la fenêtre d'enregistrement, cliquez sur Next (Suivant).
  6. Lancez l'application qui communique avec le serveur IMS Connect et effectuez les opérations que vous voulez enregistrer.

    Vérifiez que l'hôte et le port de cette application correspondent à l'hôte et au port de l'enregistreur (localhost:8001 en général).

  7. Lorsque les transactions enregistrées s'affichent dans la fenêtre Virtual Service Image Recorder (Enregistreur d'image de service virtuel), cliquez sur Next (Suivant).

    La fenêtre Data Protocols (Protocoles de données) s'ouvre.

    Par défaut, si le champ d'en-tête TransactionCode (Code de transaction) existe, il est défini comme opération de la demande. De même, TransactionCode (Code de transaction), DestinationId (ID de destination) et ClientId (ID de client) sont ajoutés comme arguments, si ces champs existent dans la définition du fichier de format.

  8. Ajoutez des protocoles de données, y compris le protocole de données de copybook si nécessaire et cliquez sur Next (Suivant).

    La fenêtre Conversation Starter (Démarrage de conversations) s'ouvre.

  9. Cliquez sur Next (Suivant).
  10. Sélectionnez les options pour afficher le modèle de service virtuel et l'image de service virtuel, puis cliquez sur Finish (Terminer).

    L'éditeur d'images de service affiche l'image de service IMS Connect.

Fichiers de format personnalisés IMS Connect

Si le système testé utilise des en-têtes de demande différents de ceux pris en charge par défaut par DevTest, avant de lancer l'enregistrement, procédez comme suit :

  1. Créez un fichier <custom-format>.format dans le dossier Data (Données) du projet DevTest.
  2. Modifiez le fichier dans un éditeur de texte et ajoutez-y le texte suivant. Indiquez vos définitions de champ sous la zone RequestUserHeader (En-tête de demande d'utilisateur).

    #-------------------------------------------------------------------------------------
    # The IMS™ request message (IRM) header contains a 28-byte fixed-format
    # section that is common to all messages from all IMS Connect client applications
    # that communicate with IMS TM.
    #-------------------------------------------------------------------------------------
    RequestHeaderCommon {
        LLLL                        int;                    #total message length IRM + user data
        IRMFixedHeader {
            LL                      short;                  #IRM_LEN, total length of the header segment including user header portion
            ZZ                      byte;                   #IRM_ARCH
            Flag0                   byte;                   #IRM_F0
            UserExitId              string(8);              #IRM_ID
            NakReasonCode           byte(2);                #IRM_NAK_RSNCDE
            Reserved1               byte(2);                #IRM_RES1
            MessageType             byte;                   #IRM_MessageType
            WaitTime                byte;                   #IRM_TIMER
            SocketConnectionType    byte;                   #IRM_SOCT
            EncodingSchema          byte;                   #IRM_ES
            ClientId                byte(8);                #IRM_CLIENTID
        }
    }
    
    #-------------------------------------------------------------------------------------
    # Format of user portion of IRM some custom header
    #
    # Following the 4-byte length field and the 28-byte fixed portion of the
    # IMS™ request message (IRM) header in IMS Connect client input messages,
    # user-written client applications can include a user-defined section in the IRM.
    #
    #-------------------------------------------------------------------------------------
    RequestUserHeader {                   
        MyFlag1                       byte;
        MyFlag2                       byte;
        MyFlag3                       byte;
        MyFlag4                       byte;
        TransactionCode             string(8);
        DestinationId               string(8);
        LogicalTerminal             string(8);
        Miscellaneous               byte(20);
    }
    
    #-------------------------------------------------------------------------------------
    # Format of data segments of request message
    #-------------------------------------------------------------------------------------
    RequestPayloadSegment  {
            LL                      short;
            ZZ                      byte(2);
            Data                    byte(LL:inclusive);
    }
    
    #-------------------------------------------------------------------------------------
    # Format of header for response message. Some responses will have it, some won't
    #-------------------------------------------------------------------------------------
    ResponseMessageHeader {
            LLLL                    int;                   # followed by multiple ResponsePayloadSegment
    }
    
    #-------------------------------------------------------------------------------------
    # Format of data segments of request message
    #-------------------------------------------------------------------------------------
    ResponsePayloadSegment {
            LL                      short;
            ZZ                      byte(2);
            Data                    byte(LL:inclusive);
    }
    

Une fois le fichier créé et enregistré dans le dossier Data (Données), il s'affichera dans le champ IMS Format File (Fichier de format IMS) de l'enregistreur. Vous pouvez sélectionner le fichier de format pour des applications qui utilisent des en-têtes de demande autre que ceux par défaut.