Skip Headers

Oracle9iAS Forms Services Deployment Guide
Release 9.0.2

Part Number A92175-01
Go To Documentation Library
Go To Product List
Solution Area
Go To Table Of Contents
Go To Index

Go to previous page Go to next page

Basics of Deploying Oracle9i Forms Applications


This chapter describes the basic files you need to configure Oracle9iAS Forms Services, provides an overview of how Oracle9iAS Forms Services runs in Oracle9iAS, and describes the steps you need to follow to deploy Oracle9i Forms applications. After installation is complete, you can use the information in this chapter to change your initial configuration or make modifications as your needs change.

This chapter contains the following sections:

Configuration Files

This section introduces the basic files you need to configure Oracle9i Forms applications. For more advanced configuration topics, see Chapter 3, "Configuring Oracle9iAS Forms Services".

This section contains the following sub-sections:


Location of files are given relative to the ORACLE_HOME directory. Forward slashes should be replaced by back slashes on Windows.

Oracle9i Forms Configuration Files

Oracle9i Forms configuration files allow you to specify parameters for your forms. This section contains the following sub-sections:


Location: forms90/server.

This is the Forms Servlet configuration file that contains the following:

Variables (%variablename%) in the baseHTML file are replaced with the appropriate parameter values specified in the formsweb.cfg file and from query parameters in the URL request (if any).

For more information about formsweb.cfg, see Chapter 3, formsweb.cfg.

base.htm, basejini.htm, basejpi.htm, and baseie.htm

Location: forms90/server.

The baseHTML files (base.htm, basejini.htm, basejpi.htm, and baseie.htm) are used as templates by the Forms Servlet when generating the HTML page used to start up an Oracle9i Forms application.

We recommend that you make configuration changes in the formsweb.cfg file and avoid editing the baseHTML files. If you need to change the baseHTML files, create your own versions and reference them from the formsweb.cfg file by changing the appropriate settings.

For more information about baseHTML files, see Chapter 3, base.htm, basejini.htm, basejpi.htm, and baseie.htm.


Location: forms90/server.

This file allows you to configure Forms Trace. Forms Trace allows you to replace the functionality that was provided with Forms Runtime Diagnostics (FRD) and Performance Event Collection Services (PECS), which were available in earlier releases of Oracle9i Forms. Forms Trace allows you to trace the execution path through a form (for example, steps the user took while using the form).

For more information about ftrace.cfg, see Chapter 7, ftrace.cfg.

Oracle9iAS Containers for J2EE (OC4J) Configuration Files

By default Oracle9i Forms is configured for OC4J by deploying it as a J2EE compliant application packaged in an EAR (Enterprise Archive) file called forms90app.ear. This EAR file is deployed during the Oracle9iAS installation process (if you choose to configure Oracle9i Forms). During deployment, the EAR file is unpacked into the applications directory of the OC4J instance.

This section describes:


Location: j2ee/ProductGroup2/applications/forms90app/forms90web/WEB-INF/web.xml.

Once Oracle9i Forms has been installed and configured, the web.xml file is located in the directory j2ee/ProductGroup2/applications/forms90app/forms90web/WEB-INF underneath ORACLE_HOME. It defines the aliases "f90servlet" and "l90servlet" for the Forms Servlet and the Forms Listener Servlet.

For more information about web.xml, see Chapter 3, web.xml.

Directory structure for Oracle9i Forms OC4J files

During Oracle9iAS installation and configuration, the Forms EAR file (forms90app.ear) is deployed to the "ProductGroup2" OC4J instance. This results in the following directory structure.

Names with a + sign are directories:


Oracle HTTP Listener Configuration Files

This section describes the file used to configure Oracle HTTP Listener for Oracle9i Forms.


Location: forms90/server.

This is the Oracle HTTP listener configuration file for Oracle9i Forms. It is included into oracle_apache.conf, which in turn is included into httpd.conf (the master HTTP listener configuration file). Forms90.conf defines virtual directors (aliases) and servlet mount points to map URL requests to the Forms Servlets running in the OC4J servlet engine.

For more information about forms90.conf, see Chapter 3, forms90.conf.

Standard Fonts and Icons File

This section describes the file used to configure font and icon settings for Oracle9i Forms.


Location: forms90/java/oracle/forms/registry

This file allows you to change the default font, font mappings, and icons that Oracle9iAS Forms Services uses.

For more information about registry.dat, see Chapter 3, registry.dat.

Environment Variables

This section describes the default environment variable containing environment settings for the Forms runtime process.

For a full list of customizable environment variables, see Chapter 3, Customizing Environment Variables and Registry Settings.


Location: forms90/server.

This file contains environment settings for Forms runtime and can be found in the same directory as the formsweb.cfg file. On UNIX, default.env should include the PATH and LD_LIBRARY_PATH.

For more information about default.env, see Chapter 3, default.env.

Application Deployment

Once you have created your application in Oracle9i Forms Developer , you are ready for application Web deployment. Oracle9i Forms accesses an application in Oracle9iAS through a specified URL. The URL then accesses the HTTP Listener, which communicates with the Listener Servlet. The Listener Servlet starts up ifweb90.exe for each new Oracle9i Forms module.

For more information about how Oracle9iAS Forms Services runs, see Oracle9iAS Forms Services in Action.

Deploying Your Application

To deploy a basic form with the default parameters set up by the installer:

  1. Create your application in Oracle9i Forms Developer and save it.

    .fmb is a design time file that can only be opened in Oracle9i Forms Developer. .fmx is the runtime file created when you compile the .fmb and is used for Web deployment.

    For more information about Oracle9i Forms Developer, go to the Help menu in Oracle9i Forms Developer.

  2. Create a configuration section in formsweb.cfg so that Oracle9i Forms can access your application module. You can do this at the end of formsweb.cfg in any open space. The syntax for creating a configuration file is as follows:



    For example,



    In the previous example, Oracle9i Forms is running the application "application" and calling the file "hrapp.fmx".

    This means the Oracle9i Forms module hrapp.fmx will be callable on the Web by entering "...?config=application" in the Browser URL.

    Note: You can name the configuration section anything you want, as long as it does not include spaces.

  3. Make sure the .fmx file location is specified in the forms90_path environment variable. For example, if your .fmx file is located in d:/my_files/applications, in the forms90_path you would include d:/my_files/applications (separated by semi-colons if listing more than one location).

    Forms90_Path is an environment variable that can be set using an Oracle9i Forms environment file, an ASCII file referenced by envFile=<name of the file> in formsweb.cfg. The deault environment file used is default.env located in the Forms90\Server directory.

    To create your own environment file copy default.env and modify it as needed by your application. In the application configuration section in formsweb.cfg, add the following parameter:



    envFile=<your file name>.env

  4. Enter the name of your application into the following URL:

    where "mymachine" is the name of your machine and "7777" is the port used by your HTTP Listener.

    Since you specified a configuration file, you will need to add "config=" and the name of the configuration section. So, using the example in step 2, the URL to access hrapp.fmx would be:

Specifying Parameters

There are three ways to predefine paramter values for your Oracle9i Forms applications. You can define parameters by:

Oracle9iAS Forms Services in Action

This sections describes how an Oracle9i Forms application runs in Oracle9iAS, and how the configuration files are used, assuming that the Forms Servlet is used to generate the initial HTML page. For simplicity, we assume the Web server is running on port 7777 on a machine called "". We also assume no modifications have been made to the standard configuration created during the Oracle9iAS installation process.

When a user runs an Oracle9i Forms application, the following sequence of events occurs:

  1. The user starts up their Web browser and goes to a URL like the following:

    In this case, the (top level) form module to be run is called "hrapp" using the configuration section called "ienative"

  2. Oracle HTTP listener receives the request. It forwards the request to OC4J, since the path "/forms90/f90servlet" matches one of the OC4J mount directives in the forms90.conf file (the one for the Forms Servlet).

  3. OC4J maps the request to the Oracle9i Forms application (whose context root is /forms90). It maps the request to the Forms Servlet (using the f90servlet servlet mapping specified in the web.xml file).

  4. The Forms Servlet (running in OC4J) processes the request as follows:

    • Opens the servlet configuration file (formsweb.cfg by default). If that parameter is not set, the default configuration file (<ORACLE_HOME>/forms90/server/formsweb.cfg) is used.

    • Determines which configuration section to use in the formsweb.cfg file. Since the URL contains the query parameter "config=ienative", the [ienative] section will be used.

    • Determines which baseHTML file to use, based on (a) what browser made the request, (b) what platform the browser is running on, and (c) the settings of various parameters in the formsweb.cfg file (specifically, baseHTMLie, baseHTMLjinitiator, baseHTMLjpi, baseHTML, and IE).

    • Reads the baseHTML file, and sends the contents back as an HTML page to the user's Web browser, after doing variable substutions as follows:

        Whenever a variable (like %myParam%) is encountered, the Forms Servlet looks for a matching URL query parameter (for example, &myParam=xxx), or, failing that, looks for a matching parameter in the formsweb.cfg file. If a matching parameter is found, the variable (%myParam%) is replaced with the parameter value.

        For example, the baseHTML file contains the text %form%. In our example, this is replaced with the value "hrapp".

  5. Depending on which baseHTML file the Forms Servlet selected, the HTML page sent back to the Web browser will contain an Applet, Object or Embed tag to start up the Forms applet (thin client). The Forms applet runs in a JVM (either the Web browser's native JVM, or a "plugged in" JVM like Oracle JInitiator or Sun's Java plug-in).

  6. If the baseHTML file selected was for a plug-in (Oracle JInitiator or Sun's JDK Java plug-in), and if the user does not already have that plug-in installed on their machine, they are prompted to install the plug-in. In the case of JInitiator, the download location is under the virtual path /forms90/jinitiator (a virtual path defined in the forms90.conf file).

  7. In order to start up the Forms applet, its Java code must first be loaded. The location of the applet is specified by the applet codebase and archive parameters. For example, if the user is running with Oracle JInitiator, the applet code is loaded from the file

    The virtual path definition in the forms90.conf file for "/forms90/java" allows the applet code to be loaded from the Web server.

    Note: The Forms applet code (for example, f90all_jinit.jar) is only to be loaded over the network the first time the user runs an Oracle9i Forms application (or if a newer version of Oracle9i Forms is installed on the Web server). Otherwise, it is to be loaded from the Web browser's (or the Java plug-in's) cache on the local disk.

  8. Once the Forms applet is running, it starts up a Forms session by contacting the Forms Listener Servlet at URL

  9. The Oracle HTTP listener receives the request. It forwards the request to OC4J, since the path "/forms90/l90servlet" matches one of the OC4J mount directives in the forms90.conf file (the one for the Forms Listener Servlet).

  10. The Forms Listener Servlet (l90servlet) starts up a Forms runtime process (ifweb90.exe or f90webm) for the Forms session.

  11. Communication continues between the Forms applet (running in the user's Web browser) and the Forms runtime process, via the Listener Servlet, until the Forms session ends.

  12. The command line (such as giving the name of the form to run) is passed to the Forms runtime process. It is given as the applet parameter "serverArgs". Part of the serverArgs value in the baseHTML file was %form%, which was replaced by "hrapp". Therefore the runtime process actually runs the form in the file "hrapp.fmx".

    This file must either be present in the workingDirectory (which is specified in the formsweb.cfg file), or in one of the directories named in the FORMS90_PATH environment setting, which is defined in the environment file (default.env by default). You can also specify the directory in the formsweb.cfg file (for example, form=c:\temp\myform).

  13. The Forms sessions ends when one of the following occurs:

    • The top level form is exited (for example, by PL/SQL trigger code which calls the "exit_form" built-in function). In this case, the user is prompted to save changes if there are unsaved changes. "exit_form(no_validate)" exits the form without prompting.

    • The user quits their Web browser (in this case, any pending updates are lost).

Client Browser Support

Users can view Oracle9i Forms applications on the Web using Oracle JInitiator plug-in (using Netscape Navigator or Internet Explorer). In future patch releases other virtual machines will be supported.

For more information about client browser support, including the latest supported platforms, go to the Oracle9i Forms Developer menu and choose Help | Forms on OTN...

Oracle JInitiator

Oracle JInitiator runs within a Web browser and is based on Sun's JDK/JRE 1.3. It provides the ability to specify a specific Java Virtual Machine (JVM) on the client rather than using the browser's (native) default JVM. Oracle JInitiator does not replace or modify the default JVM provided by the browser. Rather, it provides an alternative JVM in the form of a plug-in for Netscape Navigator and as an ActiveX component for Internet Explorer.

Oracle provides two JAR files (f90all.jar and f90all_jinit.jar) that group and zip classes together for efficient delivery across the network to the client. f90all_jinit.jar is an extra-compressed JAR file that can be used only with Oracle JInitiator to provide increased performance at download time. Once on the client, the files are cached for future use.

For more information about Oracle JInitiator, see Appendix A, "JInitiator".

How Configuration Parameters and BaseHTML Files are Tied to Client Browsers

When an user starts a Web-enabled application (by clicking a link to the application's URL), the Forms Servlet:

  1. Detects which browser is being used;

  2. Reads the formsweb.cfg file to determine the Internet Explorer parameter setting if the user is using Internet Explorer 5.5 or higher;

  3. Selects the appropriate baseHTML file using the following table:
    Browser detected IE parameter setting Base HTML file used

    Internet Explorer 5.x or 6*

    native VM


    Internet Explorer 5.x or 6*



    Netscape Navigator or Internet Explorer version preceding version 5

    not applicable


    All other browsers

    not applicable


    * Internet Explorer 6 that has been upgraded from 5.5 only (IE 6 is not certified in the base release)

    ** Internet Explorer running on Windows with the Microsoft Native VM.

  4. Replaces variables (%variablename%) in the baseHTML file with the appropriate parameter values specified in the Forms Servlet .initArgs file, formsweb.cfg file, and from query parameters in the URL request (if any).

  5. Sends the HTML file to the user's browser.

Go to previous page Go to next page
Copyright © 2002 Oracle Corporation.

All Rights Reserved.
Go To Documentation Library
Go To Product List
Solution Area
Go To Table Of Contents
Go To Index