How to Configure WebUtil in Oracle Forms 11g – A Step-by-Step Guide

Introduction

Oracle Forms 11g lacks native support for client-side operations, such as file selection dialogs, clipboard access, or interactions with Microsoft Office. WebUtil bridges this gap by enabling Oracle Forms applications to perform these client-side operations.

This guide provides a detailed step-by-step procedure to configure WebUtil in Oracle Forms 11g, complete with actual commands.

1.      Prepare the Database Schema for WebUtil

Before using WebUtil, you must create the necessary database objects by executing the create_webutil_db.sql script.

Connect to the database as SYSDBA:

$  sqlplus / as sysdba

Create a dedicated WebUtil user :

SQL>CREATE USER webutil IDENTIFIED BY webutil DEFAULT TABLESPACE USERS TEMPORARY TABLESPACE TEMP;
 
SQL> GRANT CONNECT, RESOURCE, CREATE SYNONYM, CREATE PUBLIC SYNONYM TO webutil;

Run the WebUtil database script from application server:

$ sqlplus webutil/webutil@DB_SID $ORACLE_HOME/forms/create_webutil_db.sql

1.      Download and Place the JACOB Library Files

WebUtil depends on the JACOB library to interact with Windows-based applications.

Download the Required JACOB Version

·         For Forms 11g Release 1 (11.1.1.X) → JACOB 1.10.1

·         For Forms 11g Release 2 (11.1.2.X) → JACOB 1.14.3

The JACOB version can be downloaded from following github site

https://github.com/freemansoft/jacob-project/releases

1.      Copy JACOB Files to Oracle Forms

After downloading the JACOB files, extract to the  ZIP file:

Copy the files in following path of application server

copy jacob.jar $ORACLE_HOME/forms/java/

1.        Place the JACOB DLL Files

Place the JACOB DLL files in the correct directories:

For Forms 11g Release 1 (11.1.1.X):

copy jacob.dll $ORACLE_HOME/forms/webutil/

Forms 11g Release 2 (11.1.2.X):

cd jacob-1.14.3
cp jacob-1.14.3-x86.dll $ORACLE_HOME/forms/webutil/win32/
cp jacob-1.14.3-x64.dll $ORACLE_HOME/forms/webutil/win64/

1.      Sign the JACOB JAR File

To avoid security issues when running Forms, sign the jacob.jar file using Oracle’s provided script.

Before sign, change the following in $ORACLE_INSTANCE/bin/sign_webutil.sh  file

SET JAR_KEY_PASSWORD=Password123#

SET KEYSTORE_PASSWORD=Password123#

SET VALIDDAYS=3600

cd $DOMAIN_HOME/config/fmwconfig/servers/WLS_FORMS/applications/formsapp_11.1.2/config
 
Add following parameter
 
CLASSPATH=$ORACLE_HOME/forms/java/frmall.jar

1.      Modify the formsweb.cfg Configuration File

cd $DOMAIN_HOME/config/fmwconfig/servers/WLS_FORMS/applications/formsapp_11.1.2/config
 
Add following [webutil] configuration
 
[webutil]
WebUtilArchive=frmwebutil.jar,jacob.jar
baseHTMLjinitiator=webutiljini.htm
baseHTMLjpi=webutiljpi.htm
archive_jini=frmall_jinit.jar archive=frmall.jar
Form=webutil_demo.fmx
Userid=username/password@DB_SID
##Provide db username and password and DBsid to connect the DB

Save and exit.

1.      Compile and Deploy webutil_demo.fmb

First download webutil_demo.fmb from following url and place it in application server

https://www.dropbox.com/s/mdkhjh7997r8arh/webutil_demo.fmb?dl=0

Open form builder and compile the form webutil_demo.fmb and place it under

$ORACLE_HOME/forms location. 

Or compile it using command

$ Cd $ORACLE_HOME/bin
$ frmcmp module=webutil_demo.fmb module_type=form userid=webutil/webutil_password@yourdb compile_all=yes

1.      Compile webutil.pll to create webutil.plx

$ cd $ORACLE_HOME/bin
$ frmcmp module=webutil.pll module_type=library userid=webutil/webutil_password@yourdb compile_all=yes

Restart Oracle Forms and weblogic services

$ cd $ORACLE_INSTANCE/bin
$ ./opmnctl stopall
 
 
#Stop reports services
cd $DOMAIN_HOME/bin
 
./stopManagedWebLogic.sh WLS_REPORTS
 
#stop forms services
 
./stopManagedWebLogic.sh WLS_FORMS
 
 
#stop weblogic admin server
 
./stopWebLogic.sh
 
#start weblogic admin server
 
cd $DOMAIN_HOME/bin
 
nohup ./startWebLogic.sh > /dev/null 2>&1 &
 
#Wait for sometime to start the admin server
 
#start forms services
 
nohup ./startManagedWebLogic.sh WLS_FORMS > /dev/null 2>&1 &
 
 
#Start reports services
 
nohup ./startManagedWebLogic.sh WLS_REPORTS > /dev/null 2>&1 &
 
#start opmn
 
$ cd $ORACLE_INSTANCE/bin
./opmnctl startall
./opmnctl status

1.      Test WebUtil Configuration

http://your_server_hostname:port/forms/frmservlet?config=webutil

This should open a window like below


Categories

Leave a Reply

Your email address will not be published. Required fields are marked *