FORMS_BUILDER_CLASSPATH not set after Installation of Oracle Forms Builder 11.1.1.2.0

To add Forms 11 support to my application Forms Toolkit, I needed to install Oracle WebLogic and Oracle Developer Tools (see download information).

While the installer reported “installation complete” after a couple of minutes, it really spent about 5 hours (on my machine) installing and configuring the software. It’s best to watch the installation log file using a tool like BareTail, because the installer won’t give you much information whether it is still active and what it is doing.

After completion, I tried to start Oracle Forms Builder, but got this error message:

FRM-91129: fatal error in runtime process: no value specified for required environment variable FORMS_BUILDER_CLASSPATH

FRM-91129: Abbruchfehler: Kein Wert für erforderliche Umgebungsvariable FORMS_BUILDER_CLASSPATH angegeben

Forms 11 does not seem to be administered by earlier versions of the Oracle Home Selector, so I had to look for some clues where Forms would get its startup information from.

Open the Registry Editor (regedit.exe) and navigate to HKLM\SOFTWARE\ORACLE\ and find a number of subkeys starting with “KEY_OH”. Navigate to the key holding values for ORACLE_HOME and ORACLE_HOME_KEY that point to your installation directory.

In Explorer, navigate to the forms\templates\registry directory of your installation (C:\oracle\Middleware\as_1\forms\templates\registry in my case), and open the file formsbuilder.reg in your favorite editor and save under a different name (e.g. my_formsbuilder.reg).

Delete all lines between “REGEDIT4” and the first line containing the %ORACLE_HOME_REG_KEY% macro. The file now looks like this:

REGEDIT4

[HKEY_LOCAL_MACHINE\%ORACLE_HOME_REG_KEY%]
"FORMS_SCCONVERT"="false"
[HKEY_LOCAL_MACHINE\%ORACLE_HOME_REG_KEY%]
"FORMS_SCDRIVER"="d2scrw32.dll" 

[HKEY_LOCAL_MACHINE\%ORACLE_HOME_REG_KEY%]
"FORMS_SCVIEWER"="NOTEPAD.EXE" 

[HKEY_LOCAL_MACHINE\%ORACLE_HOME_REG_KEY%]
"FORMS_ORACLE_INSTANCE"="%ORACLE_INSTANCE%"
[HKEY_LOCAL_MACHINE\%ORACLE_HOME_REG_KEY%]
"FORMS_BUILDER_CLASSPATH"="%ORACLE_HOME%\\a\\number\\of\\jars"

Replace all occurrences of %ORACLE_HOME_REG_KEY% with the value of the registry key ORACLE_HOME_KEY, e.g.

[HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_OH377519060]

Save the file, and double-click from Explorer. Acknowledge the warning that the .reg file will be merged into the registry, and the successful merge.

You can now start Oracle Forms Builder.

Note: this worked on my machine, and may not necessarily solve your problem. However, the procedure only adds 5 known keys to the registry, so it can be revoked easily.

Full version of Forms Tool Kit

A couple of years ago I developed a program called Forms Toolkit which was designed to be a more comfortable tool than Oracle Forms Developer for batch manipulation and batch search of .fmb source files.

Even though the application was never marketed in big style, the evaluation version seems to be available from several download sites, and has been downloaded from my site alone nearly 200 times during the last year.

The main features of Forms Toolkit include:

Searching, Replacing, and Setting Property Values

  • Search:   Search for exact value or value range
  • Replace:   Replace search results by fixed or calculated value
  • Set:   Assign fixed value

Adding and Deleting Objects

  • Add:   Copy and reference (subclass) objects
  • Delete:   Delete matching objects

Filtering Objects

  • Restrict the objects to be search and modified by defining filter criteria:
  • Object type, object name
  • Property values
    of the object or the parent object

More Functionality

  • Define projects containing all Forms files of an application
  • Save the definition of a search or replace operation to file
  • Combine several single operations as a batch operation
  • Object and property browser
  • Extract quoted texts and display text properties
  • Detailed protocol
  • Files supported by Forms Open API: fmb, pll, mmb, olb

Forms Toolkit supports Oracle Forms Developer versions 6i, 9i, and 10g.