Présentation du conteneur COBOL

Le conteneur COBOL permet de charger des modules COBOL dans l'espace adresse, de sorte qu'ils sont appelés directement.

Le conteneur peut être créé et détruit plusieurs fois au cours du cycle de vie d'un serveur applications. Chaque conteneur est créé avec une enclave LE (Language Environment) distincte de celle du serveur. Le conteneur est assuré de posséder un environnement de langage propre chaque fois qu'il est créé.

Les programmes Java™ peuvent transmettre des paramètres en COBOL et extraire les résultats. Le générateur de module de remplacement d'appel COBOL est fourni pour créer les modules de remplacement d'appel et les liaisons de données Java en fonction des définitions de lien et de données dans le source COBOL. En outre, les connexions JDBC de type 2 créées par le programme Java peuvent être partagées avec le programme COBOL sous le même contexte transactionnel.

Valeur du conteneur COBOL

Le produit fournit un environnement d'exécution complet pour le traitement par lots Java. Une partie de la prise en charge de lots concerne l'intégration à d'autres systèmes de traitement d'informations. COBOL fait partie du traitement par lots depuis les tout premiers ordinateurs, et les actifs COBOL représentent un investissement important. Le conteneur COBOL permet d'intégrer directement le langage COBOL dans le traitement Java.

Restrictions de programmation pour les programmes COBOL

Les restrictions de programmation suivantes s'appliquent aux programmes COBOL qui s'exécutent dans l'environnement du produit :
  • Les gestionnaires d'erreurs définis par l'utilisateur ne sont pas autorisés.
  • Le contrôle de transaction explicite, tel que COMMIT ou ROLLBACK, n'est pas autorisé.
  • Les registres spéciaux DB2, tels que SOLID ou SCHEMA, ne peuvent pas être définis.
  • L'accès à la définition de données nécessite un code utilisateur pour allouer ou libérer dynamiquement la définition de données.
  • L'appel Java des intitulés ENTRY n'est pas pris en charge.
  • L'appel COBOL du code Java n'est pas pris en charge

Exigences de compilation COBOL

Vous devez compiler tous les modules COBOL que vous utilisez dans l'environnement avec les options suivantes :

dll
Les modules COBOL doivent être au format DLL (bibliothèque de liaison dynamique).
rent
Les modules COBOL doivent contenir du code réentrant.
thread
Les modules COBOL doivent autoriser les unités d'exécution.
outdd(WCGILOUT)
Requis pour que la sortie COBOL DISPLAY s'affiche dans les journaux des travaux du produit.
SQL('ATTACH(RRSAF)')
Requis pour l'accès à DB2.
Vous pouvez spécifier ces options dans le source COBOL :
cbl dll,lib,rent,thread,outdd(wcgilout)
Vous pouvez également spécifier ces options comme entrées sur le compilateur COBOL. Par exemple, entrez ce qui suit en ligne de commande cob2 :
cob2 -c -bdll,rent,thread,lib,list '-qOUTDD(WCGILOUT)' sample.cbl

Restrictions pour le conteneur COBOL

Le produit qui héberge le conteneur COBOL doit être configuré avec un profil de charge de travail ISOLATE.

Pour plus d'informations sur la configuration du profil de charge de travail, lire la section concernant les paramètres avancés des services ORB sur la plateforme z/OS.

Restrictions relatives aux sources de données JDBC pour le conteneur COBOL

Les restrictions répertoriées dans cette section s'appliquent aux sources de données JDBC contenant des connexions DB2 de type 2 que se partagent le code Java et le code COBOL via ILContainer.setDB2Connection. [En outre, spécifiez le type d'objet pour ILContainer.setDB2Connection.]

Ces restrictions garantissent que les constructions de données DB2 qui sont ouvertes par le code COBOL et qui sont conservées au sein de limites COMMIT, telles que WITH HOLD CURSOR, sont correctement nettoyées lors de la fermeture de la connexion JDBC.

Le regroupement de connexions doit être désactivé. Vous pouvez désactiver le regroupement de connexions à l'aide de la propriété disableWASConnectionPooling. Pour définir cette propriété à l'aide de la console d'administration, cliquez sur Ressources > JDBC > Sources de données > nom_source_données > Propriétés personnalisées > Nouvelle. Ajoutez une propriété personnalisée nommée disableWASConnectionPooling et affectez-lui la valeur true.

Le partage de connexions doit avoir pour valeur UNSHARED. Pour affecter la valeur UNSHARED au partage de connexions, utilisez la propriété globalConnectionTypeOverride. Pour définir cette propriété à l'aide de la console d'administration, cliquez sur Ressources > JDBC > Sources de données > nom_source_données > Propriétés du pool de connexions > Propriétés personnalisées du pool de connexions > Nouvelle. Ajoutez une propriété personnalisée nommée globalConnectionTypeOverride et affectez-lui la valeur unshared (non partagée).

Pour plus d'informations sur ces propriétés, lire la section sur l'optimisation des pools de connexions.


Icône indiquant le type de rubrique Rubrique de concept



Icône d'horodatage Dernière mise à jour: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=cgrid_cobol_container_overview
Nom du fichier : cgrid_cobol_container_overview.html