Developpez.com

Plus de 2 000 forums
et jusqu'à 5 000 nouveaux messages par jour

Configuration de la bibliothèque WebUtil avec Oracle Forms 11g

Ce tutoriel permet de décrire toutes les étapes pour la mise en place de la bibliothèque WebUtil Oracle Forms 11g.

Vous pouvez commenter le contenu de ce tutoriel sur le forum d'entraide oracle forms : Commentez Donner une note à l'article (5).

Article lu   fois.

L'auteur

Profil ProSite personnel

Liens sociaux

Viadeo Twitter Facebook Share on Google+   

I. Introduction

La bibliothèque WebUtil a été mise en place par Oracle afin de pourvoir à certaines fonctionnalités côté client en mode Web.

Par exemple, lors de l'utilisation en mode C/S, on peut faire appel à certaines fonctions telles que HOST, GET_FILE_NAME, etc. Celles-ci réfèrent alors au poste client.

En mode Web, les modules seront servis par le serveur d'application et de ce fait, tout appel de fonction, similaire à HOST par exemple implique les fonctionnalités du serveur et non plus celles du client.

De ce fait et afin de maintenir les mêmes fonctionnalités que nous avons en mode C/S, on mettra en place la bibliothèque WebUtil avec les modifications correspondantes au niveau des modules(1).

Image non disponible

Téléchargez la bibliothèque JACOB ici. Cette bibliothèque est très utile pour configurer WebUtil.

Image non disponible

Une fois la bibliothèque téléchargée, on va copier le fichier jacob.jar dans le dossier java de Forms indiqué comme suit (C:\Oracle\Middleware\FRHome\forms\java) :

Image non disponible

II. Phase 1 : configuration de la bibliothèque webutil

Cette étape concerne la configuration du poste du développeur en vue de l'utilisation de WebUtil.

Copiez le fichier DLL dans le dossier de WebUtil comme indiqué dans cette image.

Le fichier jacob_1.17-M2-x64 doit être copié dans C:\Oracle\Middleware\FRHome\forms\webutil\win64 :

Image non disponible

Le fichier jacob_1.17-M2-x32 doit être copié dans C:\Oracle\Middleware\FRHome\forms\webutil\win32 :

Image non disponible

Modifiez le fichier de configuration formsweb.cfg. Faites une copie de ce fichier avant de faire toute manipulation. Contrairement à la version 10g, ce fichier se trouve dans le dossier suivant :

C:\Oracle\Middleware\user_projects\domains\FRMdomain\config\fmwconfig\servers\WLS_FORMS\applications\formsapp_11.1.2\config

Image non disponible

Ajoutez jacob.jar dans la section archive du fichier formsweb.cfg :

Image non disponible

II-A. Initialisation des objets

Création de l'utilisateur WEBUTIL : celui-ci sera le propriétaire du package WebUtil.

Connectez-vous avec le compte sys as sysdba et procédez comme suit :

 
Sélectionnez
CREATE USER WEBUTIL IDENTIFIED BY WEBUTIL;
GRANT CONNECT, RESOURCE TO WEBUTIL;
Image non disponible

Création du package WEBUTIL_DB : pour cela, exécutez le script create_webutil_db.sql qui se trouve dans C:\Oracle\Middleware\FRHome\forms

Image non disponible

Contenu du fichier create_webutil_db.sql :

Image non disponible

Connectez-vous avec le compte webutil (pour vous assurer que c'est le bon utilisateur, faites un SHOW USER) :

Image non disponible

On voit bien que le package a été créé avec succès sans aucune erreur :

Image non disponible

Donnez les GRANT nécessaires pour les utilisateurs de l'application. Reconnectez-vous avec le compte webutil.

 
Sélectionnez
GRANT EXECUTE ON WEBUTIL_DB TO PUBLIC ;
Image non disponible

Créer un synonyme pour WEBUTIL_DB : reconnectez-vous avec le compte sys as sysdba pour faire cette opération.

 
Sélectionnez
CREATE PUBLIC SYNONYM WEBUTIL_DB FOR WEBUTIL_DB
Image non disponible

La dernière étape consiste à compiler cette bibliothèque pour générer le fichier webutil.plx. Pour cela, ouvrez le fichier webutil.pll et compilez-le :

Image non disponible

On voit bien que le fichier a été compilé et a généré le fichier plx :

Image non disponible

II-B. Signature des fichiers JAR

Il faut que les deux fichiers JAR webutil et Jacob.jar soient signés afin que les utilisateurs de votre application ne soient pas requis de valider à chaque fois l'authenticité des bibliothèques.

  • Vérifiez que frmwebutil.jar se trouve dans C:\Oracle\Middleware\FRHome\forms\java :
Image non disponible
  • Assurez-vous que les deux fichiers JACOB.DLL et JACOB.JAR sont copiés(2).

Pour résoudre ce problème :

1. Faites une sauvegarde de votre fichier sign_webutil.bat et ouvrez-le avec l'éditeur NotePad++ et vérifiez les deux commentaires :

 
Sélectionnez
REM *** Remove the text after the '=' and replace with your password. ***
Image non disponible

2. Localisez la ligne :

JAR_KEY_PASSWORD=<Your private key password>

Image non disponible

et spécifiez un mot de passe pour : JAR_KEY_PASSWORD==<yourPassword>

3. Sauvegardez votre script et exécutez-le pour signer les fichiers JAR. Utilisez ce chemin tel que mentionné ici :

ORACLE_INSTANCE\bin\sign_webutil.bat %ORACLE_HOME%\forms\java\jacob.jar

Vous devez ensuite exécuter cette commande pour tous les fichiers jar. Après avoir exécuté les commandes, s'il vous plaît vérifiez la date modifiée des fichiers jar pour vous assurer qu'ils ont tous été signés avec succès.

Exécutez la signature avec les commandes suivantes :

  • Ouvrez une fenêtre DOS
  • Changez vers C:\Oracle\Middleware\FRMInst\bin
  • Exécutez : sign_webutil.bat C:\Oracle\Middleware\FRHome\forms\java\frmwebutil.jar
  • Ensuite : sign_webutil.bat C:\Oracle\Middleware\FRHome\forms\webutil\jacob.jar

III. Phase 2 : utilisation de webutil au niveau d'un module Forms

Dans cette partie, on montre comment on utilise la bibliothèque WebUtil.

On va commencer par le téléchargement d'une démo disponible sur le site web d'Oracle à cette adresse :

http://www.oracle.com/technetwork/developer-tools/forms/webutil-090641.html

Testez le fichier webutil_demo.fmb avec Oracle Forms 11g (suivez le guide qui se trouve dans readme.pdf)

Ouvrez le fichier avec Forms 11g :

Image non disponible
Image non disponible

Exécutez cette form - webutil_demo :

Image non disponible

Cliquez sur le bouton « Get Client Info »…

IV. Conclusion

Ce guide spécifie les étapes nécessaires pour l'utilisation de la librairie WebUtil avec Oracle Forms 11g.

V. Remerciements

Tous mes remerciements à toute l'équipe de DVP, en particulier Claude Leloup et Marie-Hélène Delacroix ainsi que l'aide qui m'a été accordée pour la mise en place de ce tutoriel y compris l'hébergement de mon espace personnel DVP.

Vous avez aimé ce tutoriel ? Alors partagez-le en cliquant sur les boutons suivants : Viadeo Twitter Facebook Share on Google+   


Il faudrait s'assurer qu'il n'y a pas d'anciennes versions de webutil.olb, webutil.plx, webutil.pll sur votre serveur. La nouvelle bibliothèque de webutil se trouve dans c:\Oracle\Middleware\FRMHome\forms.
Il y a un bogue dans 11g avec l'utilitaire de signature de webutil. En tant que tel, on va d'abord changer les mots de passe dans le fichier sign_webutil puis signer à nouveau tous les fichiers jar dans le dossier \ java.

  

Copyright © 2016 Abderrahmane Abed. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts. Droits de diffusion permanents accordés à Developpez LLC.