Cet article explique pourquoi le lancement du module Connect en crontab unix peut poser problème.
Afin d’automatiser l’arrêt-relance du progiciel P5 on peut utiliser OPX Services Scheduler qui fonctionne sur toutes les plateformes. Sur les serveurs UNIX, on peut être amené à utiliser la fonctionnalité CRONTAB pour gérer les arrêt-relances de l’application (en particulier sur des environnements de test ou de recette).
Si l’on programme l’arrêt-relance de P5 dans la crontab de l’utilisateur « root » en exécutant les scripts d’arrêt-relance standard P5 « stop-opx2 » et « start_opx2 » on ne rencontrera pas de problème particulier.
En revanche si l’on choisit de lancer directement le script « start_opx2_connect » ou un script équivalent directement dans la crontab de l’utilisateur applicatif on rencontrera une erreur d’accès à la base de données dans les logs applicatifs et l’application ne démarrera pas (le chargement bouclera en erreur).
Lorsqu’on lance un traitement dans la crontab, l’environnement (.profile unix) de l’utilisateur n’est pas chargé par défaut. Or pour fonctionner correctement le module Connect doit connaitre les paramètres d’environnement liés à la base de données. Le module Connect sera bien lancé mais en l’absence de ces paramètres d’environnement chargés au démarrage du Connect la connexion à la BDD sera impossible.
Dans le cas où on lance les scripts « stop-opx2 » et « startopx2 » avec root il n’y a aucun problème puisque ce script contient la commande « su – _user_applicatif » qui va forcer le chargement du fichier .profile avant d’exécuter la commande.
La solution à ce problème consiste donc à rajouter dans le script unix qui lance le module Connect la commande
« . ./.profile » qui va permettre de forcer le chargement de l’environnement de l’utilisateur applicatif avant le lancement du module Connect.
Note : le chargement du .profile n’est pas nécessaire pour l’arrêt du Connect, seulement pour son lancement.
Tuto Hibernate - Dans cet article, nous voyons comment ramener plusieurs champs mais pas tous.
Infinispan / JBoss - Gestion des caches applicatifs infinispan dans un application JEE
L’écriture de tests automatisés est souvent perçue par les développeurs comme une tâche ingrate et chronophage. Certes, les tests n’apportent rien de plus au rendu visuel du projet web, mais ils sont pourtant essentiels pour assurer la fiabilité d’une application sur le long-terme. Et si on vous disait qu’il existe un outil capable de rendre cette tâche bien moins fastidieuse ? Voici Cypress !