A continuación detallo los pasos necesarios para la configuración de la librería Webutil para un servidor de aplicaciones Oracle Application Server 10g (OAS).
- Obtener la versión correcta de Webutil:
Es importante mencionar que la versión de Webutil debe ser igual que la versión de Forms, por ello si tenemos un OAS con versión 10.1.2.3 la versión de Webutil debe ser 10.1.2.3. Es por ello que antes de configurar el Webutil recomiendo que ya se encuentre el servidor parchado a la versión 10.1.2.3 para evitar en un futuro tener que volver a configurar.
En el OAS por defecto el Webutil no viene integrado como un componente, es por ello que debemos obtenerlo de una instalación de "Developer Suit" el cual debe ser la misma versión que nuestro OAS.
- Obtener la versión correcta de Jacob
Si la versión es 10.1.2.0.2 o 10.1.2.2 debes usar el
Jacob 1.8
- Creamos el directorio "webutil"
%ORACLE_HOME%\forms\webutil
- Copiamos los siguientes archivos a la ruta %ORACLE_HOME%\forms\webutil
jacob.dll --> incluidos en el jacob que hayamos descargado según versión requerida.
d2kwut60.dll --> obtenerlo del Developer Suite en la ruta %ORACLE_HOME%\forms\webutil
JNIsharedstubs.dll --> obtenerlo del Developer Suite en la ruta %ORACLE_HOME%\forms\webutil
sign_webutil.bat --> obtenerlo del Developer Suite en la ruta %ORACLE_HOME%\forms\webutil
- Copiar el archivo jacob.jar del jacob descargado a la ruta %ORACLE_HOME%\forms\java
- Si hemos aplicado el parche 9593176 o 9282569 o 11710576 no debemos realizar este paso, pues ya el frmwebutil.jar se encuentra en la ruta correcta.
Copiamos el frmwebutil.jar que se encuentra en la ruta %ORACLE_HOME%\forms\java del Developer Suite a la misma ruta del OAS: %ORACLE_HOME%\forms\java
Nota: Si estamos usando la versión 10.1.2.0.2 se deberá aplicar el parche 5017052 pues éste agrega unos archivos javascript así como modifica los archivos base para el servlet de Forms.
- Firmamos el jacob:
Desde linea de comando o la terminal hacemos lo siguiente:
- Nos movemos a la ruta: %ORACLE_HOME%\forms\java
- Luego configuramos la variable de ambiente PATH: set PATH=%ORACLE_HOME%\jdk\bin;%PATH%
- Ejecutamos el siguiente comando:
%ORACLE_HOME%\forms\webutil\sign_webutil.bat %ORACLE_HOME%\forms\java\jacob.jar
- Verificamos que en la ruta %ORACLE_HOME%\forms\server se encuentre el archivo webutil.cfg, de lo contrario lo copiamos de la instalación del Developer Suite.
- La siguiente variable debe estar definida en el archivo %ORACLE_HOME%\forms\server\default.env
WEBUTIL_CONFIG=<ORACLE_HOME>\forms\server\webutil.cfg
- Los siguientes jars deben ser incluidos a la variable CLASSPATH del archivo %ORACLE_HOME%\forms\server\default.env
%ORACLE_HOME%\forms\java\frmall.jar;%ORACLE_HOME%\forms\java\frmwebutil.jar;%ORACLE_HOME%\forms\java\jacob.jar;%ORACLE_HOME%\jdk\jre\lib\rt.jar
- El archivo formsweb.cfg debe contener la siguiente configuración:
[webutil]
WebUtilArchive=frmwebutil.jar,jacob.jar
WebUtilLogging=off
WebUtilLoggingDetail=normal
WebUtilErrorMode=Alert
WebUtilDispatchMonitorInterval=5
WebUtilTrustInternal=true
WebUtilMaxTransferSize=16384
baseHTMLjinitiator=webutiljpi.htm
baseHTMLjpi=webutiljpi.htm
archive=frmall.jar
lookAndFeel=oracle
- El siguiente directorio virtual debe estar definido en el archivo %ORACLE_HOME%\forms\server\forms.conf:
AliasMatch
^/forms/webutil/(..*) "%ORACLE_HOME%/forms/webutil/$1"
- Creamos un usuario de base de datos "webutil" y ejecutamos en él el script que se encuentre en el Developer Suite:
%ORACLE_HOME%\forms\create_webutil_db.sql
- Compilamos la librería webutil.pll para obtener su correspondiente archivo compilado plx y lo movemos a una ruta definida en el FORMS_PATH como %ORACLE_HOME%\forms
También podemos compilar la forma de webutil_demo.fmb en caso de tenerla y copiamos su respectivo archivo compilado fmx en la misma ruta %ORACLE_HOME%\forms.
Por ultimo ejecutamos la forma desde el navegador para verificar que todo este bien:
http://host:port/forms/frmservlet?config=webutil&form=webutil_demo&userid=webutil/webutil@db