Exemple d'exposition manuelle de interactionSpec et de IMSConnectionSpec sous forme de données en entrée : exemple d'annuaire téléphonique IMS

Vous pouvez exposer les propriétés de IMSInteractionSpec et de IMSConnectionSpec pour l'entrée en tant que données afin que votre application Java™ puisse définir ou obtenir les valeurs des propriétés. Par exemple, vous pouvez exposer les propriétés de nom et de mot de passe utilisateur de IMSConnectionSpec si votre application Java utilise une connexion EIS gérée par les composants. Vous pouvez aussi exposer la propriété d'ID client de IMSConnectionSpec si votre application Java exécute une interaction sur une connexion socket persistante dédiée.

Pourquoi et quand exécuter cette tâche

Pour exposer les propriétés de IMSInteractionSpec et de IMSConnectionSpec pour l'entrée, vous devez modifier l'interface et les fichiers d'implémentation de votre bean J2C avant de l'utiliser dans une application. Généralement, vous n'exposez que les propriétés dont a besoin votre application Java comme entrée. Les étapes de cette rubrique illustrent comment exposer toutes les propriétés de IMSInteractionSpec et de IMSConnectionSpec à l'aide du bean J2C dans le projet PhoneBookJ2CBean qui a été créé dans la rubrique Création d'un bean J2C pour la connexion à IMS.

Procédure

  1. Développez le projet PhoneBookJ2CBean et ouvrez le fichier d'interface PB.java dans l'éditeur Java.
  2. Dans le fichier PB.java, mettez à jour la méthode runPB(). Ajoutez les arguments pour les propriétés d'entrée de IMSInteractionSpec et de IMSConnectionSpec. Ces arguments sont utilisés pour fournir des valeurs d'entrée pour les propriétés exposées, de la même façon que l'argument INPUTMSGarg est utilisé pour fournir les valeurs pour le message d'entrée de la transaction IMS. Après avoir ajouté les arguments dans la méthode runPB(), le code se présente comme suit :
    package sample.ims; 
    
    
    /** 
     * @generated 
     */ 
    public interface PB { 
    
        /** 
         * @generated 
         */ 
        public OUTPUTMSG runPB(INPUTMSG arg, 
                int myCommitMode, 
                int myExecutionTimeout, 
                int myImsRequestType, 
                int myInteractionVerb, 
                String myLtermName, 
                String myMapName, 
                boolean myPurgeAsyncOutput, 
                boolean myReRoute, 
                String myReRouteName, 
                int mySocketTimeout, 
                String myUserName, 
                String myPassword, 
                String myGroupName, 
                String myClientID) throws javax.resource.ResourceException; 
    }
  3. Sauvegardez et fermez le fichier.
  4. Développez le projet PhoneBookJ2CBean et ouvrez le fichier de liaison PBImpl.java dans l'éditeur Java.
  5. Dans le fichier PBImpl.java, mettez à jour le Javadoc pour la méthode runPB() en ajoutant des balises doclet pour chacune des propriétés que vous voulez exposer.
  6. Mettez à jour la signature de la méthode runPB(). Ajoutez les arguments pour l'implémentation. Les arguments ajoutés à la méthode sont référencés par les balises doclet correspondantes. Pour plus d'informations sur l'édition des balises doclet J2C, voir Edition du bean J2C. Après avoir ajouté les balises doclet et mis à jour la signature de la méthode, le code se présente comme suit :
    /** 
         * @j2c.interactionSpec class="com.ibm.connector2.ims.ico.IMSInteractionSpec" 
         * @j2c.interactionSpec-property name="commitMode" argumentBinding="myCommitMode" 
         * @j2c.interactionSpec-property name="executionTimeout" argumentBinding="myExecutionTimeout" 
         * @j2c.interactionSpec-property name="imsRequestType" argumentBinding="myImsRequestType" 
         * @j2c.interactionSpec-property name="interactionVerb" argumentBinding="myInteractionVerb" 
         * @j2c.interactionSpec-property name="ltermName" argumentBinding="myLtermName" 
         * @j2c.interactionSpec-property name="mapName" argumentBinding="myMapName" 
         * @j2c.interactionSpec-property name="purgeAsyncOutput" argumentBinding="myPurgeAsyncOutput" 
         * @j2c.interactionSpec-property name="reRoute" argumentBinding="myReRoute" 
         * @j2c.interactionSpec-property name="reRouteName" argumentBinding="myReRouteName" 
         * @j2c.interactionSpec-property name="socketTimeout" argumentBinding="mySocketTimeout" 
         * 
         * @j2c.connectionSpec class="com.ibm.connector2.ims.ico.IMSConnectionSpec" 
         * @j2c.connectionSpec-property name="userName" argumentBinding="myUserName" 
         * @j2c.connectionSpec-property name="password" argumentBinding="myPassword" 
         * @j2c.connectionSpec-property name="groupName" argumentBinding="myGroupName" 
         * @j2c.connectionSpec-property name="clientID" argumentBinding="myClientID" 
         * 
         * @generated 
         */ 
        public OUTPUTMSG runPB(INPUTMSG arg, 
                int myCommitMode, 
                int myExecutionTimeout, 
                int myImsRequestType, 
                int myInteractionVerb, 
                String myLtermName, 
                String myMapName, 
                boolean myPurgeAsyncOutput, 
                boolean myReRoute, 
                String myReRouteName, 
                int mySocketTimeout, 
                String myUserName, 
                String myPassword, 
                String myGroupName, 
                String myClientID) throws javax.resource.ResourceException {
  7. Sauvegardez et fermez le fichier. Le nouveau code d'implémentation est généré pour la méthode runPB(). Pour chaque propriété exposée, la balise doclet utilise l'attribut argumentBinding à la place de l'attribut value. La valeur de l'attribut argumentBinding représente l'argument de méthode de la propriété IMSInteractionSpec ou IMSConnectionSpec correspondante. Vous venez d'exposer toutes les propriétés d'entrée de IMSConnectionSpec.

Commentaires