Peut-être que les plus grosses différences entre les technologies présentées dans ces articles se situent dans leur degré d’intégration avec i5/OS. Par exemple, l’un des problèmes rencontrés avec des technologies Web a été la liste de bibliothèques.
Il faut savoir que ni PHP ni
Intégration avec i5/OS
Java n’ont vraiment la notion de ce qu’est une liste de bibliothèques : ils se contentent d’exécuter des instructions SQL pour appeler le code RPG. Si les bibliothèques nécessaires ne se trouvent pas dans la liste de bibliothèques du job serveur SQL, il est difficile de faire fonctionner correctement le programme de service RPG.
Dans certains cas, il a fallu utiliser des commandes destinées à changer la liste de bibliothèques et il a fallu coder en dur les noms de bibliothèques dans le programme. Mais il faut bien admettre que le fait de coder les noms de bibliothèques dans votre programme va à l’encontre de l’objectif de la liste de bibliothèques, n’est-ce pas ? Par comparaison, la liste de bibliothèques n’a posé aucun problème avec le code CGIDEV2.
Comme ce code est conçu pour s’interfacer au logiciel i5/OS traditionnel, la configuration Apache fournit une variable nommée QIBM_CGI_LIBRARY_LIST, laquelle rend très facile la mise en oeuvre de listes de bibliothèques différentes pour des environnements différents. Sur une note connexe, le code RPG a pu appeler le programme de service directement pour accéder à ses procédures, tandis que le code Java et PHP a dû passer par SQL.
Certes, vous pourriez utiliser un appel de service Web ou la classe Service ProgramCall de la boîte à outils Java, mais ces méthodes sont beaucoup plus limitées. L’interface SQL fournit un peu plus de fonctionnalités mais pas autant qu’un appel de procédure direct.
Les appels de procédure di – rects sont aussi plus faciles à coder. Quand vous examinez l’exemple de code pour ces applications, notez que les auteurs PHP et Java ont créé des classes qui enveloppent ces appels SQL afin de les rendre aussi simples à utiliser qu’un appel de procédure direct. Générer ces enveloppes supplémentaires demande un peu plus de travail, et donc c’est un point à considérer dans le choix d’une technologie.
La version Zend Core de PHP fournit une belle bibliothèque de routines qui aide à intégrer le code PHP avec i5/OS. Pour Java, IBM fournit le kit JT/400 qui, entre autres, est une bibliothèque de routines encore plus complète pour intégrer du code avec i5/OS. Pourtant, aucun d’entre eux n’est aussi bien intégré que RPG, lequel a été conçu dès le départ pour être intégré dans i5/OS. Comme CGIDEV2 n’est rien d’autre qu’un jeu d’extensions de RPG, il tire le maximum de l’intégration de RPG avec i5/OS.
Téléchargez cette ressource
Mac en entreprise : le levier d’un poste de travail moderne
Ce livre blanc répond aux 9 questions clés des entreprises sur l’intégration du Mac : sécurité, compatibilité, gestion, productivité, coûts, attractivité talents, RSE et IA, et l’accompagnement sur mesure proposé par inmac wstore.
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- Veeam passe à la vitesse supérieure avec iResOps pour Microsoft 365
- Visibilité, réputation, clients : ce que les petites entreprises ne pourront plus déléguer en 2027
- IA souveraine : l’Europe avance, mais son interconnexion prend du retard
- Cloud public : la sécurité des données s’impose comme premier critère pour les agents publics
Articles les + lus
Continuer avec Exchange Server : quelles conséquences ?
Raccourcis Réseau et Navigateur : le kit de Diagnostic des Professionnels IT
Raccourcis PowerShell et Windows Terminal pour les Professionnels IT
Commandes Windows 11 : le Guide des Outils accessibles avec Win + R
Sécurité : une approche dans la durée avant tout
À la une de la chaîne Tech
- Continuer avec Exchange Server : quelles conséquences ?
- Raccourcis Réseau et Navigateur : le kit de Diagnostic des Professionnels IT
- Raccourcis PowerShell et Windows Terminal pour les Professionnels IT
- Commandes Windows 11 : le Guide des Outils accessibles avec Win + R
- Sécurité : une approche dans la durée avant tout
