La propriété executionTimeout correspond au délai maximum autorisé entre l'envoi, depuis IMS Connect, d'un message à IMS et la réception d'une réponse depuis IMS. La valeur du délai d'attente du socket encapsule la valeur du délai d'attente d'exécution. Par conséquent, la valeur du socket doit être supérieure à la valeur de l'exécution car la connexion peut dépasser le temps imparti inutilement si sa valeur est inférieure à la valeur de l'exécution. La table suivante répertorie les valeurs proposées pour le délai d'attente du socket en se basant sur les valeurs du délai d'attente d'exécution.
Délai d'attente d'exécution (en millisecondes) | Comportement du délai d'attente d'exécution | Valeur proposée pour le délai d'attente du socket |
0 (ou aucune valeur) | La valeur par défaut du fichier de configuration d'IMS Connect est utilisée. | La valeur du délai d'attente du socket doit être supérieure à la valeur par défaut du délai d'attente d'exécution dans le fichier de configuration d'IMS Connect. |
1 - 3 6000 000 | La réponse d'attente dépasse le temps imparti après la valeur en millisecondes spécifiée. | La valeur du délai d'attente du socket doit être supérieure à la valeur du délai d'attente d'exécution. |
-1 | La réponse d'attente est indéfinie. | Définissez la valeur du délai d'attente du socket sur 0 pour que la connexion attende indéfiniment. |
Cette valeur peut se définir selon deux méthodes. Vous pouvez enregistrer une application en utilisant l'interface CCI (Common Client Interface) pour accéder aux méthodes getter et setter fournies avec IMSInteractionSpec ou utiliser les outils fournis par les IDE des plateformes de Rational Software Developer, comme Rational Application Developer intégrant la fonction (facultative) J2C.
Utilisation de l'application CCI pour définir une valeur du délai d'attente du socket
Si vous créez une application CCI, vous aurez accès à la méthode setSocketTimeout de IMSInteractionSpec. Pour utiliser la méthode setSocketTimeout, vous devez instancier un nouvel élément IMSInteractionSpec ou l'obtenir à partir de votre interaction spécifique, puis en définir ensuite la valeur du délai d'attente pour le socket en utilisant la méthode setSocketTimeout fournie par la classe IMSInteractionSpec. Par exemple :
interactionSpec.setSocketTimeout(timeoutValue1); interaction.execute(interactionSpec,input,output); interactionSpec.setSocketTimeout(timeoutValue2); interaction.execute(interactionSpec,input,output);
Utilisation de Rational Application Developer pour définir une valeur du délai d'attente du socket
Vous pouvez utiliser Rational Application Developer pour définir la valeur du délai d'attente du socket lorsque vous définissez pour la première fois les propriétés de liaison d'IMS pour un nouveau bean Java J2C.
Pour éditer les propriétés de liaison d'une opération déjà définies pour un nouveau bean Java, procédez comme suit :