Vous pouvez exposer les propriétés InteractionSpec et ConnectionSpec en tant qu'entrée de données pour que votre application Java puisse définir les valeurs des propriétés. Par exemple, vous pouvez avoir besoin d'exposer les propriétés de délai d'attente d'exécution ECIInteractionSpec pour fournir une valeur de délai d'attente en fonction des entrées utilisateur.
Exemple
Voici la méthode getCustomer() du tutoriel tader99, modifiée pour accepter un entier, execTimeout, en tant qu'autre argument et le définir sur la propriété interactionSpec. Les modifications qui ont été effectuées sont indiquées en gras. Le code généré modifié apparaît en italique :
/** * @j2c.interactionSpec class="com.ibm.connector2.cics.ECIInteractionSpec" * @j2c.interactionSpec-property name="functionName" value="TADERC99" * @j2c.interactionSpec-property * name="executeTimeout" * argumentBinding="execTimeout" * * @generated */ public sample.cics.data.CustomerInfo getCustomer( sample.cics.data.CustomerInfo arg, int execTimeout) throws javax.resource.ResourceException { ConnectionSpec cs = getConnectionSpec(); InteractionSpec is = interactionSpec; if (is == null) { is = new com.ibm.connector2.cics.ECIInteractionSpec(); ((com.ibm.connector2.cics.ECIInteractionSpec) is).setFunctionName("TADERC99"); ((com.ibm.connector2.cics.ECIInteractionSpec) is).setExecuteTimeout(execTimeout); } sample.cics.data.CustomerInfo output = new sample.cics.data.CustomerInfo(); invoke(cs, is, arg, output); return output; }
Pour exposer une propriété ConnectionSpec pour l'entrée, utilisez plutôt la balise doclet @j2c.connectionSpec-property.