Skip Headers

Oracle9iAS Forms Services Deployment Guide
Release 9.0.2

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

Go to previous page Go to next page

3
Configuring Oracle9iAS Forms Services

Introduction

This chapter contains the following sections:

Customizing Configuration Files

During the installation, the following configuration files were installed onto your system:

When a user first starts an Oracle9iAS Forms application (by clicking a link to the application's URL), the baseHTML file is read by Forms Servlet. Any 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).

You can modify the configuration files as your needs change.

formsweb.cfg

For a description and the location of the Forms Servlet configuration file (formsweb.cfg), see Chapter 2, formsweb.cfg.

Parameters Naming Files

Make sure the EnvFile parameter specifies the physical path to the environment file that contains the environment variable settings you want to use.

The four baseHTML parameters should also be set to point to appropriate files. Typically, lines like the following should appear in the default section at the start of the formsweb.cfg file:

baseHTML=base.htm
baseHTMLie=baseie.htm
baseHTMLJinitiator=basejini.htm
baseHTMLjpi=basejpi.htm
envfile=default.env

All of these parameters give file names. If no paths are given (as in this example), the files are assumed to be in the same directory as the Forms Servlet configuration file (formsweb.cfg), that is <ORACLE_HOME>/forms90/servlet.

Creating specific named configurations in formsweb.cfg

You can create specific named configurations in the formsweb.cfg file. These configurations can be requested in the end-user's query string of the URL used to run a form.

Create special configurations by adding the name of the configuration in brackets at the end of the formsweb.cfg file. Then, specify the parameters (only those you want to change) for this special configuration.

For example, to create a configuration to run forms in a separate browser window with a "generic" look and feel, add the following code to the formsweb.cfg file:

[sepwin] 
forms=<module>
separateFrame=True 
lookandfeel=Generic 

The end-user would type the following URL to launch a form that uses the "sepwin" configuration:

http://server:port/forms90/f90servlet?config=sepwin

You can also use Enterprise Manager to create named configuration sections (see Chapter 6, "Enterprise Manager and Oracle9i Forms").

See Default formsweb.cfg File for other examples of special configurations.

Parameters in the formsweb.cfg File

Parameter Required / Optional Parameter Value

System parameters

These parameters control the behavior of the Forms Servlet. They can only be specified in the servlet configuration file (formsweb.cfg) and cannot be specified as URL query parameters.

baseHTML

optional

Physical path to HTML file that contains applet tags.

baseHTMLJInitiator

required

Physical path to HTML file that contains JInitiator tags.

baseHTMLjpi

optional

Physical path to HTML file that contains Java Plug-in tags. Used as the baseHTML file if the client browser is not on Windows and the client browser is either Netscape or IE without the IE native settings.

baseHTMLie

optional

Physical path to the HTML file that contains Internet Explorer 5 tags, for example the CABBASE tag. The default path is <ORACLE_HOME>baseie.htm.

This is required when using the Internet Explorer native JVM.

HTML delimiter

required

Delimiter for variable names. Defaults to %.

workingDirectory

required

Defaults to <ORACLE_HOME>/forms90 if not set.

envFile

required

This is set to default.env in the formsweb.cfg file.

IE

recommended if there are users with Internet Explorer 5.0 or above browsers

Specifies how to execute the Forms applet under Microsoft Internet Explorer 5.0 or above. If the client is using an Internet Explorer 5.0 or above browser, either the native JVM or JInitiator can be used. A setting of "JInitiator" uses the basejini.htm file and JInitiator. A setting of "Native" uses the browser's native JVM.

Runform parameters (serverArgs parameters)

All parameters from here on match variables (%parameterName%) in the baseHTML file. These variables are replaced with the parameter values specified in the URL query string, or failing that, in the formsweb.cfg file.

form

required

Specifies the name of the top level Forms module (fmx file) to run.

userid

optional

Login string. For example: scott/tiger@ORA8.

otherparams

optional

This setting specifies command line parameters to pass to the Forms runtime process in addtion to form and userid.

Default is:

debug=%debug% buffer_records=%buffer% debug_messages=%debug_messages% array=%array% query_only=%query_only% quiet=%quiet% render=%render% host=%host% port=%port%

HTML page title, attributes for the BODY tag and HTML to add before and after the form

For security reasons these may not be set using URL query parameters.

pageTitle

optional

Oracle Forms Server

HTMLbodyAttrs

optional

Attributes for the <BODY> tag of the HTML page.

HTMLbeforeForm

optional

HTML content to add to the page above the area where the Forms application will be displayed.

HTMLafterForm

optional

HTML content to add to the page below the area where the Forms application will be displayed.

Applet or object Parameters

All of the following are specified in the baseHTML file as values for object or applet parameters. For example:

<PARAM NAME="serverURL"  VALUE="%serverURL%">

serverURL

required

/forms90/l90servlet (see Chapter 1, Forms Listener Servlet)

codebase

required

Virtual directory you defined to point to the physical directory <ORACLE_HOME>/forms90/java, where, by default, the applet JAR files are downloaded from.

The default value is /forms90/java.

width

required

Specifies the width of the form applet, in pixels. Default is 650.

height

required

Specifies the height of the form applet, in pixels.Default is 500.

separateFrame

optional

Determines whether the applet appears within a separate window. Legal values: True or False.

splashScreen

optional

Specifies the .GIF file that should appear before the applet appears. Set to NO for no splash. Leave empty to use the default splash image.

To set the parameter include the file name (for example, myfile.gif) or the virutal path and file name (for example, images/myfile.gif).

background

optional

Specifies the .GIF file that should appear in the background. Set to NO for no background. Leave empty to use the default background.

lookAndFeel

optional

Determines the applications look-and-feel. Legal values: Oracle or Generic (Windows look-and-feel).

colorScheme

optional

Determines the application's color scheme. Legal values: Teal, Titanium, Red, Khaki, Blue, Olive, or Purple.

Note: colorScheme is ignored if lookAndFeel is set to Generic.

serverApp

optional

Replace default with the name of your application file (if any). Use application classes for creating application-specific font mapping and icon path settings.

To set the parameter include the file name if file is in OracleHome\forms90\java\oracle\forms\registry or include the virtual path and file name.

archive

optional

Comma-separated list of archive files that are used when the browser detected is neither Internet Explorer using native JVM nor JInitiator. (The default is f90all.jar.)

To set the parameter include the file name if the file is in the codebase directory or include the virtual path and file name.

archive_jinit

optional

Comma-separated list of JAR file(s) that is used when the browser detected is JInitiator. (The default is f90all_jinit.jar.)

To set the parameter include the file name if the file is in the codebase directory or include the virtual path and file name.

archive_ie

optional

Comma-separated list of CAB file(s) that is used when the browser detected is Internet Explorer using native JVM. (The default is f90all.cab.)

networkRetries

optional

In situations of high load or network failures, you can specify the number of times (up to 10) the client will attempt to send a request to the intended servlet engine. The default setting is 0, in which case the Forms session will terminate after one try.

mapFonts

optional

<PARAM NAME = "mapFonts" VALUE = "yes" > to trigger font mapping.

As a result of some font rendering code changes in JDK 1.3, the font heights set in JDK 1.1 increased in JDK 1.3. As this may cause display issues, you can map the JDK 1.3 fonts so that the font sizes are the same as they were in JDK 1.1.

Parameters for JInitiator

jinit_download_page

required (Netscape only)

If you create your own version of the Jinitiator download page, set this parameter to point to it. Default is /forms90/jinitiator/us/JInitiator/jinit.download.htm.

jinit_classid

required (IE only)

Default is clsid:CAFECAFE-0013-0001-0002-ABCDEFABCDEF

jinit_exename

required

Default is jinit.exe#Version=1.3.1.2

jinit_mimetype

required (Netscape only)

Default is application/x-jinit-applet;version=1.3.1.2

Parameters for Sun's Java Plug-in

jpi_codebase

required

Sun's Java Plug-in codebase setting

jpi_classid

required

Sun's Java Plug-in class id

jpi_download_page

required

Sun's Java Plug-in download page

Enterprise Manager configuration parameters

em_mode

required

1 is to enable. 0 is to disable.

Applies only to the HTML-based version of the Enterprise Manager. TRUE indicates that all Enterprise Manager information is available, including metrics and servlet status. FALSE indicates that only configuration information is available.

OID (Oracle Internet Directory) configuration parameters

oid_formsid

required

Configured during the Oracle9iAS installation, so you do not need to change this.

oracle_home

required

Configured during the Oracle9iAS installation, so you do not need to change this.

Default formsweb.cfg File

The default formsweb.cfg file contains the following:

# formsweb.cfg - Forms Servlet default configuration file
# -------------------------------------------------------
# This file defines parameter values used by the FormsServlet (f90servlet)

# ********************************
# DEFAULT CONFIGURATIONS
# ********************************
#
# These are the default settings.  Any of them may be overridden in the
# Named Configurations section.  If they are not overridden, then the
# values here will be used.
# System Paremeters cannot be overridden in the URL.  User Parameters can.
#

#
# SYSTEM PARAMETERS
# -----------------
# These have fixed names and give information required by the Forms 
# Servlet in order to function.  They cannot be specified in the URL query 
# string.  But they can be overriden in a named configuration (see below).
# Some parameters specify file names: if the full path is not given,
# they are assumed to be in the same directory as this file.  If a path
# is given, then it should be a physical path, not a URL.
#

baseHTML=base.htm
baseHTMLjinitiator=basejini.htm
baseHTMLjpi=basejpi.htm
baseHTMLie=baseie.htm

HTMLdelimiter=%

#
# WorkingDirectory defaults to <oracle_home>/forms90 if unset.
#
workingDirectory=
envFile=default.env

#
# The next parameter specifies how to execute the Forms applet under 
# Microsoft Internet Explorer 5.x.  Put IE=native if you want the
# Forms applet to run in the browser's native JVM.
#
IE=JInitiator

#
# USER PARAMETERS
# ---------------  
# These match variables (e.g. %form%) in the baseHTML file. Their values 
# may be overridden by specifying them in the URL query string
# (e.g. "http://myhost.mydomain.com/servlet/f90servlet?form=myform&width=700")
# or by overriding them in a specific, named configuration (see below)
#

#
# 1) Runform arguments:
#
form=test.fmx
userid=

#
# These settings support running and debugging a form from the Builder:
#
otherparams=debug=%debug% buffer_records=%buffer% debug_messages=%debug_messages% array=%array% 
query_only=%query_only% quiet=%quiet% render=%render% host=%host% port=%port% play=%play% 
record=%record%
debug=no
buffer=no
debug_messages=no
array=no
query_only=no
quiet=yes
render=no
host=
port=

#
# 2) HTML page title, attributes for the BODY tag, and HTML to add before and 
#    after the form:
#
pageTitle=Oracle9iAS Forms Services
HTMLbodyAttrs=
HTMLbeforeForm=
HTMLafterForm=

#
# 3) Values for the Forms applet parameters:
#
serverURL=/forms90/l90servlet
codebase=/forms90/java
imageBase=DocumentBase
width=650
height=500
separateFrame=false
splashScreen=
background=
lookAndFeel=Oracle
colorScheme=teal
logo=

serverApp=default

#
# The following archive settings are for
#   archive_jini - settings for JInitiator
#   archive_ie   - settings for IE native JVM
#   archive      - settings for all other cases (Java Plugin, Appletviewer, etc)
#
archive_jini=f90all_jinit.jar
archive_ie=f90all.cab
archive=f90all.jar

#
# Number of times client should retry if a network failure occurs.  Only
# change after having read the documentation.
#
networkRetries=0

#
# 4) Parameters for JInitiator (used with Windows clients)
#

#
# Page displayed to Netscape users to allow them to download JInitiator.  
# If you create your own page, you should set this parameter to point to it.
#
jinit_download_page=/forms90/jinitiator/us/jinit_download.htm

#
# Parameters related to the version of JInitiator.
#
jinit_classid=clsid:CAFECAFE-0013-0001-0003-ABCDEFABCDEF
jinit_exename=jinit.exe#Version=1,3,1,3
jinit_mimetype=application/x-jinit-applet;version=1.3.1.3

#
# 5) Parameters for the Java Plugin (used with non-Windows clients)
#

#
# Page displayed to users to allow them to download the JPI
# (NOTE: you should check this page and possibly change the settings)
#
jpi_download_page=http://java.sun.com/products/plugin/1.3/plugin-install.html

#
# Parameters related to the version of the Java Plugin
#
jpi_classid=clsid:8AD9C840-044E-11D1-B3E9-00805F499D93
jpi_codebase=http://java.sun.com/products/plugin/1.3/jinstall-13-win32.cab#Version=1,3,0,0
jpi_mimetype=application/x-java-applet;version=1.3

#
# 6) EM config parameter
# Set this to "1" to enable Enterprise Manager to track Forms processes
#
em_mode=0

#
# 6) OID Config parameters (for Single Sign-On)
#
oid_formsid=%OID_FORMSID%
oracle_home=%ORACLE_HOME%

# ********************************
# NAMED CONFIGURATIONS
# ********************************
#
#  You may define your own specific, named configurations (sets of parameters)
#  by adding special sections as illustrated in the following examples.  
#  Note that you need only specify the parameters you want to change.  The 
#  default values (defined above) will be used for all other parameters.
#  Use of a specific configuration can be requested by including the text 
#  "config=<your_config_name>" in the query string of the URL used to run
#  a form.  For example, to use the sepwin configuration, your could issue
#  a URL like "http://myhost.mydomain.com/servlet/f90servlet?config=sepwin".
#

#
# Example 1: configuration to run forms in a separate browser window with 
#            "generic" look and feel (include "config=sepwin" in the URL)
#
[sepwin]
separateFrame=True
lookandfeel=Generic

#
# Example 2: configuration affecting users of MicroSoft Internet Explorer 5.x.
#            Forms applet will run under the browser's native JVM rather than 
#            using Oracle JInitiator.
#
[ienative]
IE=native

#
# Example 3: configuration forcing use of the Java Plugin in all cases
#            (even if the client browser is on Windows)
#
[jpi]
baseHTMLJInitiator=basejpi.htm
baseHTMLie=basejpi.htm

#
# Example 4: configuration running the Forms ListenerServlet in debug mode 
#            (debug messages will be written to the servlet engine's log file)
#
[debug]
serverURL=/servlet/l90servlet/debug

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

For a brief description and the locations of base.htm, basejini.htm, basejpi.htm, and baseie.htm, see Chapter 2, base.htm, basejini.htm, basejpi.htm, and baseie.htm.

Four baseHTML files are created for your system by the Oracle Universal Installer during Oracle9iAS installation and configuration. In most cases, you will not need to modify these files. If you do need to modify these files, you should create your own versions and reference them from the formsweb.cfg file. The default files may be overridden by a patch installation.

When a user first starts an Oracle9i Forms application (by clicking a link to the application's URL), a baseHTML file is read by Forms Servlet.

Any variables (%variablename%) in the baseHTML file are replaced with the appropriate parameter values specified in the formsweb.cfg file described in formsweb.cfg, and from query parameters in the URL request (if any). Query parameter values override the values in the formsweb.cfg file.

Then, the baseHTML file is downloaded to the user's Web browser.

Note:

Any baseHTML variables that you want to modify can be changed by modifying the corresponding parameter values in the formsweb.cfg file, described in formsweb.cfg.

The following baseHTML starter files are available in the <ORACLE_HOME>/forms90/server directory:

If you decide to create a new baseHTML file:

  1. Place the new baseHTML file in any directory. Update the basejini.htm, baseie.htm, basejpi.htm, or base.htm parameter in the formsweb.cfg file to contain the baseHTML file's full physical path location.

  2. Copy the basejini.htm, baseie.htm, basejpi.htm, or base.htm starter file, which is located in the <ORACLE_HOME>/forms90/server directory.

  3. Rename the file (for example, order.htm).

  4. Add or modify any text that is visible to the user (for example, text contained within <TITLE> and <BODY> tags).

  5. Modify the parameters as needed. It is recommended that you use variables in the baseHTML file, and specify the actual values in the formsweb.cfg file, as described in formsweb.cfg.

    The baseHTML and baseHTMLJInitiator tags can also be set in the specific named configuration section, overwriting the system default value. This is recommended if an individual custom baseHTML template needs to be used. However, if a custom template is used for all applications, then it is recommended you change the default configuration section in the formsweb.cfg file.

Parameters and variables in the baseHTML file

If you do not want to use a parameter tag that is provided in the base.htm or basejini.htm file, delete it from the file.

We recommend that you specify the rest of the parameter values as variables (%variablename%) in the baseHTML file. For example:

<PARAM NAME="logo"  VALUE="%logo%">

Then, specify the actual parameter values in the formsweb.cfg file, which are defined in Parameters in the formsweb.cfg File. All variables are replaced with the appropriate parameter values at runtime.

Usage Notes

Default base.htm File

<HTML>
<!-- FILE: base.htm (Oracle Forms)                                  -->
<!--                                                                -->  
<!-- This is the default baseHTML file for running a form on the   -->
<!-- web using a generic APPLET tag to include Forms applet.        -->
<!--                                                                -->  
<!-- IMPORTANT NOTES:                                               -->
<!-- Default values for all the variables which appear below        -->
<!-- (enclosed in percent characters) are defined in the servlet    -->
<!-- configuration file (formsweb.cfg). It is preferable to make    -->
<!-- changes in that file where possible, rather than this one.     -->
<!--                                                                -->  
<!-- This file will be REPLACED if you reinstall Oracle Forms, so   -->
<!-- you are advised to make your own version if you want to make   -->
<!-- want to make any modifications.  You should then set the       -->
<!-- baseHTML parameter in the Forms Servlet configuration file     -->
<!-- (formsweb.cfg) to point to your new file instead of this one.  -->

<HEAD><TITLE>%pageTitle%</TITLE></HEAD>

<BODY %HTMLbodyAttrs%>
%HTMLbeforeForm%

<!-- Forms applet definition (start) -->
<APPLET CODEBASE="%codebase%"
        CODE="oracle.forms.engine.Main"
        ARCHIVE="%archive%"
        WIDTH="%Width%"
        HEIGHT="%Height%">

<PARAM NAME="networkRetries" VALUE="%networkRetries%">
<PARAM NAME="serverArgs" 
       VALUE="module=%form% userid=%userid% sso_userid=%sso_userid% %otherParams%">
<PARAM NAME="separateFrame" VALUE="%separateFrame%">
<PARAM NAME="splashScreen"  VALUE="%splashScreen%">
<PARAM NAME="background"  VALUE="%background%">
<PARAM NAME="lookAndFeel"  VALUE="%lookAndFeel%">
<PARAM NAME="colorScheme"  VALUE="%colorScheme%">
<PARAM NAME="serverApp" VALUE="%serverApp%">
<PARAM NAME="logo" VALUE="%logo%">
<PARAM NAME="imageBase" VALUE="%imageBase%">

</APPLET>
<!-- Forms applet definition (end) -->

%HTMLafterForm%

</BODY>
</HTML>

Default basejini.htm File

<HTML>
<!-- FILE: basejini.htm (Oracle Forms)                                 -->
<!--                                                                 -->  
<!-- This is the default baseHTML file for running a form on the    -->
<!-- web using JInitiator-style tags to include the Forms applet.    -->
<!--                                                                 -->  
<!-- IMPORTANT NOTES:                                                -->
<!-- Default values for all the variables which appear below         -->
<!-- (enclosed in percent characters) are defined in the servlet     -->
<!-- configuration file (formsweb.cfg). It is preferable to make     -->
<!-- changes in that file where possible, rather than this one.      -->
<!--                                                                 -->  
<!-- This file will be REPLACED if you reinstall Oracle Forms, so    -->
<!-- you are advised to make your own version if you want to make    -->
<!-- want to make any modifications.  You should then set the        -->
<!-- baseHTMLJinitiator parameter in the Forms Servlet configuration -->
<!-- file (formsweb.cfg) to point to your new file instead of this.  -->

<HEAD><TITLE>%pageTitle%</TITLE></HEAD>

<BODY %HTMLbodyAttrs%>
%HTMLbeforeForm%

<!-- Forms applet definition (start) -->
<OBJECT classid="%jinit_classid%"
        codebase="/forms90/jinitiator/%jinit_exename%"
        WIDTH="%Width%"
        HEIGHT="%Height%"
        HSPACE="0"
        VSPACE="0">
<PARAM NAME="TYPE"       VALUE="%jinit_mimetype%">
<PARAM NAME="CODEBASE"   VALUE="%codebase%">
<PARAM NAME="CODE"       VALUE="oracle.forms.engine.Main" >
<PARAM NAME="ARCHIVE"    VALUE="%archive_jini%" > 

<PARAM NAME="networkRetries" VALUE="%networkRetries%">
<PARAM NAME="serverArgs" 
       VALUE="module=%form% userid=%userid% sso_userid=%sso_userid% %otherParams%">
<PARAM NAME="separateFrame" VALUE="%separateFrame%">
<PARAM NAME="splashScreen"  VALUE="%splashScreen%">
<PARAM NAME="background"  VALUE="%background%">
<PARAM NAME="lookAndFeel"  VALUE="%lookAndFeel%">
<PARAM NAME="colorScheme"  VALUE="%colorScheme%">
<PARAM NAME="serverApp" VALUE="%serverApp%">
<PARAM NAME="logo" VALUE="%logo%">
<PARAM NAME="imageBase" VALUE="%imageBase%">
<COMMENT> 
<EMBED SRC="" PLUGINSPAGE="%jinit_download_page%" 
        TYPE="%jinit_mimetype%" 
        java_codebase="%codebase%" 
        java_code="oracle.forms.engine.Main" 
        java_archive="%archive_jini%" 
        WIDTH="%Width%"
        HEIGHT="%Height%" 
        HSPACE="0"
        VSPACE="0"

        networkRetries="%networkRetries%"
        serverArgs="module=%form% userid=%userid% sso_userid=%sso_userid% %otherparams%"
        separateFrame="%separateFrame%"
        splashScreen="%splashScreen%"
        background="%background%"
        lookAndFeel="%lookAndFeel%"
        colorScheme="%colorScheme%"
        serverApp="%serverApp%"
        logo="%logo%"
        imageBase"="%imageBase%"
>
<NOEMBED> 
</COMMENT> 
</NOEMBED></EMBED> 
</OBJECT>
<!-- Forms applet definition (end) -->

%HTMLafterForm%

</BODY>
</HTML>

Default basejpi.htm File

<HTML>
<!-- FILE: basejpi.htm (Oracle Forms)                                 -->
<!--                                                                  -->  
<!-- This is the default baseHTML file for running a form on the     -->
<!-- web using the JDK Java Plugin. This is used for example when     -->
<!-- running with Netscape on Unix.                                   -->
<!--                                                                  -->  
<!-- IMPORTANT NOTES:                                                 -->
<!-- Default values for all the variables which appear below          -->
<!-- (enclosed in percent characters) are defined in the servlet      -->
<!-- configuration file (formsweb.cfg). It is preferable to make      -->
<!-- changes in that file where possible, rather than this one.       -->
<!--                                                                  -->  
<!-- This file will be REPLACED if you reinstall Oracle Forms, so     -->
<!-- you are advised to create your own version if you want to make   -->
<!-- any modifications.  You should then set the baseHTMLjpi          -->
<!-- parameter in the Forms Servlet configuration file (formsweb.cfg) -->
<!--  to point to your new file instead of this one.  -->

<HEAD><TITLE>%pageTitle%</TITLE></HEAD>

<BODY %HTMLbodyAttrs%>
%HTMLbeforeForm%

<!-- Forms applet definition (start) -->
<OBJECT classid="%jpi_classid%"
        codebase="%jpi_codebase%"
        WIDTH="%Width%"
        HEIGHT="%Height%"
        HSPACE="0"
        VSPACE="0">
<PARAM NAME="TYPE"       VALUE="%jpi_mimetype%">
<PARAM NAME="CODEBASE"   VALUE="%codebase%">
<PARAM NAME="CODE"       VALUE="oracle.forms.engine.Main" >
<PARAM NAME="ARCHIVE"    VALUE="%archive%" > 

<PARAM NAME="networkRetries" VALUE="%networkRetries%">
<PARAM NAME="serverArgs" 
       VALUE="module=%form% userid=%userid% sso_userid=%sso_userid% %otherParams%">
<PARAM NAME="separateFrame" VALUE="%separateFrame%">
<PARAM NAME="splashScreen"  VALUE="%splashScreen%">
<PARAM NAME="background"  VALUE="%background%">
<PARAM NAME="lookAndFeel"  VALUE="%lookAndFeel%">
<PARAM NAME="colorScheme"  VALUE="%colorScheme%">
<PARAM NAME="serverApp" VALUE="%serverApp%">
<PARAM NAME="logo" VALUE="%logo%">
<PARAM NAME="imageBase" VALUE="%imageBase%">
<COMMENT> 
<EMBED SRC="" PLUGINSPAGE="%jpi_download_page%" 
        TYPE="%jpi_mimetype%" 
        java_codebase="%codebase%" 
        java_code="oracle.forms.engine.Main" 
        java_archive="%archive%" 
        WIDTH="%Width%"
        HEIGHT="%Height%" 
        HSPACE="0"
        VSPACE="0"

        networkRetries="%networkRetries%"
        serverArgs="module=%form% userid=%userid% sso_userid=%sso_userid% %otherparams%"
        separateFrame="%separateFrame%"
        splashScreen="%splashScreen%"
        background="%background%"
        lookAndFeel="%lookAndFeel%"
        colorScheme="%colorScheme%"
        serverApp="%serverApp%"
        logo="%logo%"
        imageBase"="%imageBase%"
>
<NOEMBED> 
</COMMENT> 
</NOEMBED></EMBED> 
</OBJECT>
<!-- Forms applet definition (end) -->

%HTMLafterForm%

</BODY>
</HTML>

Default baseie.htm File

<HTML>
<!-- FILE: baseie.htm (Oracle Forms)                                -->
<!--                                                                -->  
<!-- This is the default baseHTML file for running a form on the   -->
<!-- web with Internet Explorer version 5.0 or above, using that    -->
<!-- browser's native JVM.                                          -->
<!--                                                                -->  
<!-- IMPORTANT NOTES:                                               -->
<!-- Default values for all the variables which appear below        -->
<!-- (enclosed in percent characters) are defined in the servlet    -->
<!-- configuration file (formsweb.cfg). It is preferable to make    -->
<!-- changes in that file where possible, rather than this one.     -->
<!--                                                                -->  
<!-- This file will be REPLACED if you reinstall Oracle Forms, so   -->
<!-- you are advised to make your own version if you want to make   -->
<!-- want to make any modifications.  You should then set the       -->
<!-- baseHTMLie parameter in the Forms Servlet configuration file   -->
<!-- (formsweb.cfg) to point to your new file instead of this one.  -->

<HEAD><TITLE>%pageTitle%</TITLE></HEAD>

<BODY %HTMLbodyAttrs%>
%HTMLbeforeForm%

<!-- Forms applet definition (start) -->
<APPLET CODEBASE="%codebase%"
        CODE="oracle.forms.engine.Main"
        WIDTH="%Width%"
        HEIGHT="%Height%">

<PARAM NAME="networkRetries" VALUE="%networkRetries%">
<PARAM NAME="serverArgs" 
       VALUE="module=%form% userid=%userid% sso_userid=%sso_userid% %otherParams%">
<PARAM NAME="separateFrame" VALUE="%separateFrame%">
<PARAM NAME="splashScreen"  VALUE="%splashScreen%">
<PARAM NAME="background"  VALUE="%background%">
<PARAM NAME="lookAndFeel"  VALUE="%lookAndFeel%">
<PARAM NAME="colorScheme"  VALUE="%colorScheme%">
<PARAM NAME="serverApp" VALUE="%serverApp%">
<PARAM NAME="logo" VALUE="%logo%">
<PARAM NAME="imageBase" VALUE="%imageBase%">

</APPLET>
<!-- Forms applet definition (end) -->

%HTMLafterForm%

</BODY>
</HTML>

web.xml

For a description and the location of web.xml, see Chapter 2, web.xml.

Advanced users might want to edit the web.xml file to:

Default web.xml File

- <web-app>
  <display-name>Forms 9i Services</display-name> 
  <description>Oracle 9iAS: Forms 9i Services</description> 
- <welcome-file-list>
  <welcome-file>l90servlet</welcome-file> 
  </welcome-file-list>
- <!--  Forms 9i page generator servlet 
  --> 
- <servlet>
  <servlet-name>f90servlet</servlet-name> 
  <servlet-class>oracle.forms.servlet.FormsServlet</servlet-class> 
- <!-- 
 During product installation the configFileName parameter is
           specified in the orion-web.xml file as a context parameter
           override (in iDS), or as a Java system property (in iAS).  
           It is set to <oracle_home>/forms90/server/formsweb.cfg.
           You can override that value here by editing and uncommenting the
           following servlet parameter setting: 

  --> 
- <!-- 
        <init-param>
           <param-name>configFileName</param-name>
           <param-value><your configuration file name goes here></param-value>
        </init-param> 
      

  --> 
- <init-param>
- <!-- 
 Turn on or off sensitive options on the f90servlet/admin page. 
              For security reasons this should be set to false for 
              production sites.
         

  --> 
  <param-name>testMode</param-name> 
  <param-value>false</param-value> 
  </init-param>
  </servlet>
- <!--  Forms 9i listener servlet 
  --> 
- <servlet>
  <servlet-name>l90servlet</servlet-name> 
  <servlet-class>oracle.forms.servlet.ListenerServlet</servlet-class> 
  </servlet>
- <!-- 
 Forms 9i servlet mappings. Allow these paths to the servlets:
           /forms90/f90servlet or /forms90/f90servlet/*: FormsServlet
           /forms90/l90servlet or /forms90/l90servlet/*: ListenerServlet 
   

  --> 
- <servlet-mapping>
  <servlet-name>f90servlet</servlet-name> 
  <url-pattern>/f90servlet*</url-pattern> 
  </servlet-mapping>
- <servlet-mapping>
  <servlet-name>l90servlet</servlet-name> 
  <url-pattern>/l90servlet*</url-pattern> 
  </servlet-mapping>
- <!-- 
 The following context parameter is only defined here so it can be 
        overriden by the (site-specific) value in the orion-web.xml file.  
    

  --> 
- <context-param>
  <param-name>configFileName</param-name> 
  <param-value /> 
  </context-param>
  </web-app>

forms90.conf

For a description and the location of forms90.conf, see Chapter 2, forms90.conf.

The following table describes the virtual paths and servlet mappings:

Table 3-1 forms90.conf Virtual Paths and Servlet Mappings
URL Path Type Maps to Purpose

/forms90/java

Alias

<ORACLE_HOME>/forms90/java

codebase for Forms applet. Used to download the applet code to the user's web browser.

/forms90/html

Alias

<ORACLE_HOME>/forms90/html

Access runform.htm (used to run any form for testing)

/forms90/jinitiator

Alias

<ORACLE_HOME>/jinit

Oracle JInitiator download

/forms90/f90servlet

Servlet mount point

Forms Servlet

Generate HTML page to run a form

/forms90/l90servlet

Servlet mount point

Forms Listener Servlet

Handles message traffic from the Forms applet

Default forms90.conf

# $Id: forms90.conf,v 1.6 2001/10/26 00:52:16 cbarrow Exp $
# Name
#   forms90.conf 
# Purpose
#   Apache mod_oc4j and mod_jserv configuration file for Forms 9i Services.  
#   This file should be included into the Oracle Apache HTTP Listener 
#   configuration file (typically by adding an include statement to the 
#   oracle_apache.conf file)
# Remarks
#   If Forms is to be used with JServ, the jserv.properties file needs editing
#   to add the "forms90" servlet zone with properties file forms90.properties
# Notes
#   Virtual paths: We use AliasMatch when defining virtual paths for
#   security reasons (prevents directory browsing).

  # Virtual path mapping for Forms Java jar and class files (codebase)
AliasMatch ^/forms90/java/(..*) "%FORMS_ORACLE_HOME%/forms90/java/$1"

  # Virtual path for JInitiator downloadable executable and download page
AliasMatch ^/forms90/jinitiator/(..*) "%FORMS_ORACLE_HOME%/jinit/$1"

  # Virtual path for runform.htm (used to run a form for testing purposes)
AliasMatch ^/forms90/html/(..*) "%FORMS_ORACLE_HOME%/forms90/html/$1"

# Configuration for JServ (if mod_jserv.c is available and not mod_oc4j.c)
<IfModule mod_jserv.c>
  # Only configure for JServ if mod_oc4j is NOT available:
  <IfModule !mod_oc4j.c>
    # Virtual path mapping for FormsServlet and ListenerServlet.
    # Purpose: paths to invoke the servlets should be /forms90/f90servlet
    # and /forms90/l90servlet respectively.
    # We map f90servlet to servlet.if90, and l90servlet to servlet.ifl90.
    # The apJServAction directives (below) will then remap those.
    AliasMatch ^/forms90/f90servlet(.*) "/servlet.if90"
    AliasMatch ^/forms90/l90servlet(.*) "/servlet.ifl90"

    ApJServMount /forms90/servlet /forms90
    #
    # Let the servlets be called by file extension (e.g /servlet.if90)
    #
    ApJServAction .if90 /forms90/servlet/f90servlet
    ApJServAction .ifl90 /forms90/servlet/l90servlet
    # Prevent access to the Forms Servlets by paths other than
    # /forms90/f90servlet and /forms90/l90servlet.
    # 1. Prevent access via the .if90 and .ifl90 file extensions:
    <LocationMatch ^.*\.if.*90>
      order deny,allow
      deny from all
    </LocationMatch>
    # 2. Stop access by class (by paths like
    #    /forms90/servlet/oracle.forms.servlet.FormsServlet)
    <LocationMatch ^/forms90/servlet/oracle\.forms.*>
      order deny,allow
      deny from all
    </LocationMatch>
  </IfModule>
</IfModule>

# Config. for OC4J
<IfModule mod_oc4j.c>
    Oc4jMount /forms90              ProductGroup2
    Oc4jMount /forms90/f90servlet   ProductGroup2
    Oc4jMount /forms90/f90servlet/* ProductGroup2
    Oc4jMount /forms90/l90servlet   ProductGroup2
    Oc4jMount /forms90/l90servlet/* ProductGroup2
</IfModule>

registry.dat

For a description and the location of registry.dat, see Chapter 2, registry.dat.

The main reason you would want to edit this file is to change the icon settings (see Icons). You can also change the default font and font settings by changing the following section in the registry.dat file:

default.fontMap.defaultFontname=Dialog
default.fontMap.defaultSize=900
default.fontMap.defaultStyle=PLAIN

default.fontMap.defaultWeight=PLAIN

Change any of the settings above to reflect your desired font setting. For example, if you want to change your default font to Times New Roman, replace Dialog with Times New Roman.

You can change the default font face mappings:

default.fontMap.appFontnames=Courier New,Courier,courier,System,Terminal,Fixed,Fixedsys,Times,Times New 
Roman,MS Sans Serif,Arial

default.fontMap.javaFontnames=MonoSpaced,MonoSpaced,MonoSpaced,Dialog,MonoSpaced,Dialog,Dialog,Serif,Serif,Dialog,SansSerif

Some fonts on NT are not supported in Java. For this reason you can specify (map) Java-supported fonts that will appear when a non-supported font is encountered. In the previous sample, each font in default.fontMap.appFontnames corresponds to a font in default.fontMap.javaFontnames.

For more samples, see Default registry.dat.

Default registry.dat

#

# This is the Registry file.
#
# This file contains the logical [Java] Class name and an associated
# [numerical] identifier that will be used to refer to objects of the
# class in order to reduce the amount of information that needs to be
# repeatedly transmitted to the client.
#
# This file is of the Form understood by java.util.Properties (for now)
#
# The System Level sound file is relative to the CODEBASE
#
#
oracle.classById.1=oracle.forms.engine.Runform
oracle.classById.4=oracle.forms.handler.FormWindow
oracle.classById.5=oracle.forms.handler.AlertDialog
oracle.classById.6=oracle.forms.handler.DisplayList
oracle.classById.7=oracle.forms.handler.LogonDialog
oracle.classById.8=oracle.forms.handler.DisplayErrorDialog
oracle.classById.9=oracle.forms.handler.ListValuesDialog
oracle.classById.10=oracle.forms.handler.EditorDialog
oracle.classById.11=oracle.forms.handler.HelpDialog
oracle.classById.12=oracle.forms.handler.FormStatusBar
oracle.classById.13=oracle.forms.handler.MenuInfo
# oracle.classById.14=UNUSED
oracle.classById.15=oracle.forms.handler.ApplicationTimer
oracle.classById.16=oracle.forms.handler.MenuParametersDialog
oracle.classById.17=oracle.forms.handler.PromptListItem
oracle.classById.18=oracle.forms.handler.CancelQueryDialog
oracle.classById.257=oracle.forms.handler.TextFieldItem
oracle.classById.258=oracle.forms.handler.TextAreaItem
oracle.classById.259=oracle.forms.handler.FormCanvas
oracle.classById.261=oracle.forms.handler.ButtonItem
oracle.classById.262=oracle.forms.handler.CheckboxItem
oracle.classById.263=oracle.forms.handler.PopListItem
oracle.classById.264=oracle.forms.handler.TListItem
oracle.classById.265=oracle.forms.handler.CfmVBX
oracle.classById.266=oracle.forms.handler.CfmOLE
oracle.classById.267=oracle.forms.handler.RadioButtonItem
oracle.classById.268=oracle.forms.handler.ImageItem
oracle.classById.269=oracle.forms.handler.IconicButtonItem
oracle.classById.270=oracle.forms.handler.BlockScroller
oracle.classById.271=oracle.forms.handler.JavaContainer
oracle.classById.272=oracle.forms.handler.TabControl
oracle.classById.273=oracle.forms.handler.ComboBoxItem
oracle.classById.274=oracle.forms.handler.TreeItem
oracle.classById.281=oracle.forms.handler.PopupHelpItem

#
# Defaults for the Font details, all names are Java Font names.  Each of
# these parameters represents the default property to use when none is
# specified.
#
# defaultFontname represents the default Java fontName.
# defaultSize     represents the default fontSize.  Note that the size is
#                 multiplied by 100 (e.g. a 10pt font has a size of 1000).
# defaultStyle    represents the default fontStyle, PLAIN or ITALIC.
# defaultWeight   represents the default fontWeight, PLAIN or BOLD.
#
default.fontMap.defaultFontname=Dialog
default.fontMap.defaultSize=900
default.fontMap.defaultStyle=PLAIN
default.fontMap.defaultWeight=PLAIN

#
# Default Font Face mapping.
#
# appFontname  represents a comma delimited list of Application Font Names.
# javaFontname represents a comma delimited list of Java Font Names.
#
# The number of entries in the appFontname list should match the number in
# the javaFontname list.  The elements of the list are comma separated and
# *all* characters are taken literally, leading and trailing spaces are
# stripped from Face names.
#
# Note that this file uses the Java 1.1 Font names in order to be able to
# handle the NLS Plane (BUG #431051)
#
default.fontMap.appFontnames=Courier New,Courier,courier,System,Terminal,Fixed,Fixedsys,Times,Times New 
Roman,MS Sans Serif,Arial
default.fontMap.javaFontnames=MonoSpaced,MonoSpaced,MonoSpaced,Dialog,MonoSpaced,Dialog,Dialog,Serif,Seri
f,Dialog,SansSerif

#
# The Application Level icon files are relative to the DOCUMENTBASE
#   example: icons/
# or an absolute URL.
#   example: http://www.forms.net/~luser/d2k_project/
#
default.icons.iconpath=
default.icons.iconextension=gif
#
# Application level settings to control UI features
#
app.ui.lovButtons=false
app.ui.requiredFieldVA=false
#    The background color is specified as an RGB triple.
app.ui.requiredFieldVABGColor=255,0,0

Customizing Environment Variables and Registry Settings

The environment variables for Forms runtime are required by the ifweb90.exe executable. The Listener Servlet calls the executable and initializes it with the variable values provided in the environment file, which is <ORACLE_HOME>\forms90\server\default.env by default.

default.env

The environment variables required for a Forms runtime process (for example, PATH, ORACLE_HOME, FORMS90_PATH) can be defined in an environment file. Any environment variables not defined in that file are inherited from the servlet engine (OC4J). The environment file must be named in the envFile parameter in formsweb.cfg.

A few things to keep in mind when customizing environment variables are:

Important environment variables specified in default.env.

Envirionment Variable Valid Values Purpose

ORACLE_HOME

%ORACLE_HOME% (default)

Points to the base installation directory of any Oracle product.

PATH

%ORACLE_HOME%\bin (default)

Contains the executables of Oracle products.

FORM90_PATH

%ORACLE_HOME%\forms90 (default)

Specifies the path that Oracle9i Forms searches when looking for a form, menu, or library to run.

For Windows, separate paths with a semi-colon (;).

For UNIX, separate paths with a colon (:).

NLS_LANG

Defaults to language, territory, and charset specified by the database.

For more information about NLS_LANG, see your Oracle Server Reference Manual.

Specifies language-dependent operation of applications (for example, French, Japanese, or German). NLS_LANG has three components:

language - specifies supported languages used for conventions such as Oracle messages, day names, and month names. The language argument specifies default values for the territory or charset arguments, so either (or both) territory or charset can be omitted.

territory - Specifies territory-dependent operation of applications (for example, America, Brazil, or Canada).

charset - Specifies the character set used by the client application (for example, US7ASCII, JA16EUC.

For more information about NLS_LANG, see your Oracle Server Reference Manual.

DE_PREFS_TABSIZE

Any positive integer

Defines the size of a Tab (in characters) in the PL/SQL editor. Default value is 2

FORMS90_CATCHTERM

FALSE, TRUE (default)

Bypasses the normal Oracle9iAS Forms Services crash handling, and enables an operating system crash file (e.g. a Core Dump on Unix) to be generated. Normally this variable should not be set unless requested by Oracle Support.

FORMS90_TRACE_PATH

Valid writable O/S Path

The FORMS90_TRACE_PATH environment variable specifies the location of dump files produced as the result of a crash of any of the Oracle9iAS Forms Services executables. The dump files contain diagnostic information about events at the time the process crashed.

If FORMS90_TRACE_PATH is not set and a crash occurs, Oracle9iAS Forms Services will attempt to place the dump file in the directory from which the executable was called.

Set this environment variable in the jserv.properties file or the default.env file.

FORMS90_MMAP

FALSE, TRUE (default)

FORMS90_MMAP configures Oracle9iAS Forms Services to use memory mapped file i/o when running Oracle9i Forms applications. This reduces the amount of memory required on a system when more than one user is running the same Form. By default FORMS90_MMAP is set on.

Switching Memory mapping to off (FALSE) may be desirable in a development environment as memory mapped file i/o has the side effect of locking the forms in use preventing a developers from replacing them with a new version. However, be aware that doing so may increase memory usage and reduce performance. For production systems, FORMS90_MMAP should be unset or set to a value of TRUE

FORMS90_REJECT_GO_DISABLED_ITEM

FALSE, TRUE (default)

In Oracle9i Forms the Go_Item() built-in is not allowed to navigate the cursor to an item that is currently disabled. Setting this variable to False will restore the behavior found in earlier versions of Oracle9i Forms where this was possible. This variable should only be used for backwards compatibility and may be removed in a future version of the product.

FORMS90_SWITCH_JAVA_EVENTS

FALSE (default), TRUE

This variable is used to change the way in which Oracle9i Forms queues up and handles events from embedded JavaBeans. Normally this variable should not be set unless requested by Oracle Support

FORMS90_SEPARATE_DEBUGGER

FALSE (default), TRUE

This variable effects the way that the Forms Builder displays the windows created by the Forms Debugger. Setting this variable to TRUE will create the Debugger windows externally from the main Forms MDI interface. Use this setting if you need to use screen reader software such as JAWS with the debugger.

FORMS90_CLAF

<NULL> (default), TRUE

Setting FORMS90_CLAF to TRUE will restore the Forms Builder User interface to the "Classic" (6i) Forms look and feel. This may be suitable for users who require high contrast color schemes

Note: On NT, Oracle9i Forms reads Oracle environment settings from the registry unless they are set as environment variables.

Default default.env File for Windows

# default.env - default Forms environment file, Windows version
#
# This file is used to set the Forms runtime environment parameters.  
# If a parameter is not defined here, the value in the Windows registry 
# will be used. If no value is found in the registry, the value used will
# be that defined in the environment in which the servlet engine (OC4J 
# or JServ) was started.
#
# NOTES
# 1/ The Forms installation process should replace all occurrences of
#    <percent>FORMS_ORACLE_HOME<percent> with the correct ORACLE_HOME 
#    setting, and all occurrences of <percent>O_JDK_HOME<percent> with
#    the location of the JDK (usually $ORACLE_HOME/jdk).  
#    Please make these changes manually if not.
# 2/ Some of the variables below may need to be changed to suite your needs.
#    Please refer to the Forms documentation for details.
#
ORACLE_HOME=%FORMS_ORACLE_HOME%

  #
  # Search path for Forms applications (.fmx files, PL/SQL libraries)
  # If you need to include more than one directory, they should be semi-colon
  # separated (e.g. /private/dir1;/private/dir2)
  #
  # FORMS90_PATH=%FORMS_ORACLE_HOME%/forms90

  #
  # The PATH setting is not required, if the Forms executables and dll's are
  # in %ORACLE_HOME%\bin:
  #
  # PATH=%FORMS_ORACLE_HOME%\bin

  #
  # Settings for Graphics
  # -------------------------------
  # NOTE: These settings are only needed if Graphics applications 
  # are called from Forms applications
  #

    #
    # Please uncomment the following and put the correct 9i 
    # oracle_home value to use Graphics applications.
    #
    #FORMS90_ORACLE9i_HOME=<your Graphics 9i oracle_home here>

    #
    # Search path for Graphics applications
    #
    #GRAPHICS90_PATH=

  #
  # System settings
  # ---------------
  # You should not normally need to modify these settings
  #
  ORA_NLS33=%FORMS_ORACLE_HOME%\ocommon\ADMIN\DATA

  FORMS90=%FORMS_ORACLE_HOME%\forms90

Default default.env File for UNIX

# default.env - default Forms environment file, UNIX version
#
# This file is used to set the Forms runtime environment parameters.  
# If a parameter is not defined here, the value used will be that defined
# in the environment in which the servlet engine (OC4J or JServ) was started.
#
# NOTES
# 1/ The Forms installation process should replace all occurrences of
#    <percent>FORMS_ORACLE_HOME<percent> with the correct ORACLE_HOME 
#    setting, and all occurrences of <percent>O_JDK_HOME<percent> with
#    the location of the JDK (usually $ORACLE_HOME/jdk).  
#    Please make these changes manually if not.
# 2/ Some of the variables below may need to be changed to suite your needs.
#    Please refer to the Forms documentation for details.
#
ORACLE_HOME=%FORMS_ORACLE_HOME%

  #
  # Search path for Forms applications (.fmx files, PL/SQL libraries)
  #
  FORMS90_PATH=%FORMS_ORACLE_HOME%/forms90

  #
  # Java class path 
  #   This is required for the Forms debugger
  #   You can append your own Java code here)
  #
  CLASSPATH=%FORMS_ORACLE_HOME%/forms90/java/debugger.jar:%FORMS_ORACLE_
HOME%/forms90/java/utj90.jar:%FORMS_ORACLE_HOME%/jlib/ewt3.jar:%FORMS_ORACLE_
HOME%/jlib/share.jar

  #
  # The PATH setting is not required if the Forms executables are
  # in <ORACLE_HOME>/bin:
  #
  # PATH=%FORMS_ORACLE_HOME%/bin
  
  #
  # Settings for Graphics
  # -------------------------------
  # NOTE: These settings are only needed if Graphics applications 
  # are called from Forms applications
  #

    #
    # Please uncomment the following and put the correct 6i 
    # oracle_home value to use Graphics applications.
    #
    #FORMS90_ORACLE6i_HOME=<your Graphics 6i oracle_home here>

    #
    # Search path for Graphics applications
    #
    GRAPHICS60_PATH=

  #
  # System settings
  # ---------------
  # You should not normally need to modify these settings
  #
    #
    # Path for shared library objects
    #   This is highly platform (if not machine) specific !  At install time
    #   <percent>LD_LIBRARY_PATH<percent> should be replaced with the 
    #   actual value of the LD_LIBRARY_PATH environment variable (at install
    #   time).  That should ensure we have the paths for such necessities as 
    #   the motif and X11 libraries.
    # Explanations: 
    #   - Reports needs the path for libjava.so
    #     (/cdm/solaris/o_jdk/1_2_2_0_0/jre/lib/sparc)
    #   - Forms needs two paths to the jre, for libjvm.so and libhpi.so
    #   - In ojdk 1.3.1 the location of libjvm.so is lib/sparc (there is no 
    #     classic directory) so we do not include the .../classic directory 
    #     below.  There are other versions of libjvm.so (in directories server, 
    #     client and hotspot) but we will use the version in lib/sparc for now.
    #
    LD_LIBRARY_PATH=%FORMS_ORACLE_HOME%/lib:%O_JDK_HOME%/jre/lib/sparc:%O_JDK_
HOME%/jre/lib/sparc/native_threads:%LD_LIBRARY_PATH%

Creating Your Own Template HTML Files

Consider creating your own HTML file templates (by modifying the templates provided by Oracle). By doing this, you can hard-code standard Forms parameters and parameter values into the template. Your template can include standard text, a browser window title, or images (such as a company logo) that would appear on the first Web page users see when they run Web-enabled forms. Adding standard parameters, values, and additional text or images reduces the amount of work required to customize the template for a specific application. To add text, images, or a window title, simply include the appropriate tags in the template HTML file.

Including Graphics in Your Oracle9i Forms Application

In order to integrate graphics applications with your Oracle9i Forms applications, you must set the path definition in the Forms Servlet environment to include graphics as follows:

PATH=%FORMS9I_HOME%\bin;%ORACLE_GRAPHICS6I_HOME%\bin.

The path definition of the Forms Servlet environment, is taken from the path definition of the servlet container. The file or location where the path will be defined is different for different servlet containers.

For more information about graphics, see Oracle9i Forms Developer and Forms Services: Migrating Forms Applications from Forms6i.

Deploying Icons and Images Used by Oracle9iAS Forms Services

This section explains how to specify the default location and search paths for icons and images.

Icons

When deploying an Oracle9iAS Forms Services application, the icon files used must be in a Web-enabled format, such as JPG or GIF (GIF is the default format).

By default, the icons are found relative to the DocumentBase directory. That is, DocumentBase looks for images in the directory relative to the base directory of the application start HTML file. As the start HTML file is dynamically rendered by the Forms Servlet, the forms90 directory becomes the document base.

For example, if an application defines the icon location for a button with myapp/<iconname>, then the icon is looked up in the directory forms90/myapp.

To change the default location, you can set the imageBase parameter to codebase in the formsweb.cfg configuration file. Alternatively, you can change the default.icons.iconpath value of the registry.dat file in the forms90/java/oracle/forms/regsitry directory.

Setting the imageBase parameter to codebase enables Oracle9i Forms to search the forms90/java directory for the icon files. Use this setting if your images are stored in a Java archive file. Changing the image location in the registry.dat configuration file is useful if you want to store images in a central location independent of any application and independent of the Oracle9i Forms installation.

Storing Icons in a Java Archive

If an application uses a lot of custom icon images, it is recommended you store icons in a Java archive file and set the imageBase value to codebase. The icon files can be zipped to a Java archive via the Jar command of any Java Development Kit (JDK).

For example, the command Jar -cvf myjar.jar *.gif zips all files with the extension .gif into an archive file with the name myico.jar.

In order for Oracle9i Forms to access the icon files stored in this archive, the archive needs to be stored into the forms90/java directory. Also, the name of the archive file must be part of the archive tag used in the custom application section of the formsweb.cfg file (for example, archive_jini=f90all_jinit.jar, myico.jar). Now, when the initial application starts, the icon files are downloaded to and permanently stored on the client until the archive file is changed.

Note: As Oracle9i Forms default icons (for example, icons present in the default smart icon bar) are part of the f90all.jsr file, you do not need to deploy them.

Adding Icon Changes to Registry.dat

If you want to add icon changes to the registry.dat file used by your application, it is recommended that you make a copy of the existing registry.dat file and edit the copied file.

To create a copy of the registry.dat file:

  1. Copy the registry.dat text file found in the <ORACLE_HOME>/forms90/java/oracle/forms/registry directory to another directory. This directory must be mapped to a virtual directory for your Web server (for example, /appfile).

  2. Rename this new file (for example, myapp.dat).

  3. Modify the iconpath parameter specifying your icon location:

    default.icons.iconpath=/mydir or http://myhost.com/mydir
    (for an absolute path)

    or

    default.icons.iconpath=mydir
    (for a relative path, starting from the DocumentBase Directory)

  4. Modify the iconextension parameter:

    default.icons.iconextension=gif

    or

    default.icons.iconextension=jpg

To reference the application file:

In a specific named configuration section in the formsweb.cfg file, modify the value of the serverApp parameter and set the value to the location and name of your application file.

For example:

[my_app]
ServerApp=/appfile/myapp

(for an absolute path)

or

[my_app]
ServerApp=appfile/myapp

(for a relative path, relative to the CodeBase directory)

Table 3-2 Icon Location Guide
Icon Location When How

DocumentBase

Default. Applications with few or no custom icons.

Store icons in forms90 directory or in a directory relative to forms90.

Java Archives

Applications that use many custom icons

Set ImageBase to "codebase", create Java archive file for icons, and add archive file to the archive parameter in formsweb.cfg.

Registry.dat

Applications with custom icons that are stored in a different location as the Oracle9i Forms install (can be another server).

Useful if you need to make other changes to the registry.dat file like font mapping.

Copy registry.dat and change ServerApp parameter in formsweb.cfg.

SplashScreen and Background Images

When you deploy your applications, you have the ability to specify a splash screen image (displayed during the connection) and a background image file.

Those images are defined in the HTML file or in the formsweb.cfg file:

<PARAM NAME="splashScreen" VALUE="splash.gif">

<PARAM NAME="background" VALUE="back.gif">

The default location for the splash screen and background image files is in the DocumentBase directory containing the baseHTML file.

Custom JAR Files Containing Icons and Images

Each time you use an icon or an image (for a splash screen or background), an HTTP request is sent to the Web server. To reduce the HTTP roundtrips between the client and the server, you have the ability to store your icons and images in a Java archive (JAR) file. Using this technique, only one HTTP roundtrip is necessary to download the JAR file.

Creating a JAR File

The SunSoft JDK comes with an executable called jar. This utility enables you to store files inside a Java archive. For more information, see www.java.sun.com.

For example:

jar -cvf myjar.jar Splash.gif Back.gif icon1.gif

This command store three files (Splash.gif, Back.gif, icon1.gif) in a single JAR file called myjar.jar.

Using Files Within the JAR File

The default search path for the icons and images is relative to the DocumentBase. However, when you want to use a JAR file to store those files, the search path must be relative to the CodeBase directory, the directory which contains the Java applet.

If you want to use a JAR file to store icons and images, you must specify that the search path is relative to CodeBase using the imageBase parameter in the formsweb.cfg file or HTML file.

This parameter accepts two different values:

In this example, we use a JAR file containing the icons and we specify that the search should be relative to CodeBase. If the parameter "imageBase" is not set, the search is relative to DocumentBase and the icons are not retrieved from the JAR file.

For example (formsweb.cfg):

Search Path for Icons and Images

The icons and images search path depends on:

Forms Services searches for the icons depending on what you specify. This example assumes :

DocumentBase

The default search path is relative to the DocumentBase. In this case, you do not need to specify the imageBase parameter:

Table 3-3 Search Paths for Icons and Images
Location specified Search path used by Forms Services

Icons

default

http://host/documentbase

iconpath=mydir

(specified in your application file)

http://host/documentbase/mydir

(relative path)

iconpath=/mydir

(specified in your application file)

http://host/mydir

(absolute path)

Images

file.gif

(specified, for example, in formsweb.cfg as splashscreen=file.gif)

http://host/documentbase/file.gif

mydir/file.gif

http://host/documentbase/mydir/file.gif

(relative path)

/mydir/file.gif

http://host/mydir/file.gif

(absolute path)

CodeBase

Use the imageBase=CodeBase parameter in the formsweb.cfg file to enable the search of the icons and images in a JAR file:

Table 3-4 Icons and Images Search Paths Used by Oracle9iAS Forms Services
Location specified Search path used by Forms Services

Icons

default

http://host/codebase or root of the JAR file

iconpath=mydir

(specified in your application file)

http://host/codebase/mydir or in the mydir directory in the JAR file

(relative path)

iconpath=/mydir

(specified in your application file)

http://host/mydir

(absolute path)

No JAR file is used

Images

file.gif

http://host/codebase/file.gif or root of the JAR file

mydir/file.gif

(specified in your HTML file)

http://host/codebase/mydir/file.gif or in the mydir directory in the JAR file

(relative path)

/mydir/file.gif

(specified in your HTML file)

http://host/mydir/file.gif

(absolute path)

No JAR file is used.

Using HTTPS with the Forms Listener Servlet

Using HTTPS with Oracle9i Forms is no different than using HTTPS with any other Web-based application.

Server Requirements

HTTPS requires the use of digital certificates. Because Oracle9iAS Forms Services servlets are accessed via your Web server, you do not need to purchase special certificates for communications between the Oracle9i Forms client and the server. You only need to purchase a certificate for your Web server from a recognized Certificate Authority.

Client Requirements: Using HTTPS with Oracle JInitiator

If your end users are running Oracle JInitiator as the Web browser JVM, then you need to check that the Root Certificate Authority of your Web site's SSL certificate is one of those defined in the JInitiator certdb.txt file.

The certdb.txt file is usually found under c:\program files\oracle\jinitiator <version>\lib\security on the machine where JInitiator was installed.

Note: If you are using the test certificate supplied with Oracle9iAS for test purposes, you must edit the JInitiator certdb.txt file and append the contents of the demo root certificate, which is located in <9iAS oracle_home/Apache/Apache/conf/ssl.crt/demoCAcert.txt. Otherwise, you will get the following error when attempting to run a form: javax.net.ssl.SSLException: SSL handshake failed:X509CertChainInvalidErr.

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

Using the Hide User ID/Password Feature

With Oracle9iAS Forms Services, the userid parameter value is not included in the HTML generated by the Forms Servlet.

By default, this feature enables Oracle9iAS Forms Services to:

Using an Authenticating Proxy to Run Oracle9i Forms Applications

The default configuration as set up by the Oracle9iAS installation process supports authenticating proxies. An authenticating proxy is one that requires the user to supply a username and password in order to access the destination server where the application is running. Typically, authenticating proxies set a cookie to detect whether the user has logged on (or been authenticated). The cookie is sent in all subsequent network requests to avoid further logon prompts.

If users are running Netscape with JInitiator, there are certain configuration requirements necessary to ensure that the proxy's authentication cookie gets sent with all requests to the server. The basic requirement is that every URL that JInitiator has to access (for the JAR files AND for the Forms Listener Servlet) MUST be under the document base of the HTML page. This is achieved by using the Forms Servlet to generate the page, invoking it using a URL under "/forms90," such as https://myserver.com/forms90/f90servlet?config=myApp.

The codebase and server URL values set up by the Oracle9iAS installation process are /forms90/java and /forms90/l90servlet. As these are under the document base of the page (/forms90), authenticating proxies will work.

Enabling Language Detection

Oracle9i Forms architecture supports deployment in multiple languages. The purpose of this feature is to automatically select the appropriate configuration to match a user's preferred language. In this way, all users can run Oracle9i Forms applications using the same URL, yet have the application run in their preferred language. As we do not provide an integrated translation tool, you must have translated application source files.

To specify language detection:

How Language Detection Works

When the Forms Servlet receives a request for a particular configuration (for example, http://myserv/servlet/f60servlet?config=hr) it gets the client language setting from the request header "accept-language". This gives a list of languages in order of preference. For example, accept-language: de, fr, en_us means the order of preference is German, French, then US English. The servlet will look for a language-specific configuration section matching the first language. If one is not found, it will look for the next and so on. If no language-specific configuration is found, it will use the base configuration.

When the Forms Servlet receives a request with no particular configuration specified (with no "config=" URL parameter, for example, http://myserv/servlet/f60servlet), it will look for a language-specific section in the default section matching the first language (for example, [.fr]).

Multi-Level Inheritance

For ease of use, to avoid duplication of common values across all language-specific variants of a given base configuration, we allow only parameters which are language-specific to be defined in the language-specific sections. So we now support four levels of inheritance:

Typically, the parameters which are most likely to vary from one language to another are "workingDirectory" and "envFile". Using a different envFile setting for each language lets you have different values of NLS_LANG (to allow for different character sets, date and number formats) and FORMS90_PATH (to pick up language-specific fmx files). Using different workingDirectory settings provides another way to pick up language-specific .fmx files.


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

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