|Quelle: Oracle Metalink
|Modified 14-FEB-2011 Type HOWTO Status PUBLISHED|
Oracle Forms – Version: 10.1.2.3.0 to 11.1 – Release: 10.1.2.3 to 11.1
Information in this document applies to any platform.
This document will describe a new feature added to Oracle Forms WebUtil and how to use it. This new feature will allow administrators to configure the target/destination directory for where library files (i.e. *.dll) sent to the client for use by WebUtil are stored. The files used, by default are configured in webutil.cfg found on the server. For example:
The new feature is available in version 11 and newer. A patch has been made available to be added on top of 10.1.2.3.
These feature will not be made available for versions lower than 10.1.2.3.
You must have version 10.1.2.3 plus Patch 7703734 or newer of the Recommended Patch or Bundle Patch in order to obtain this new feature. To obtain the latest patch which includes this new feature, please contact Oracle Support.
This new feature is especially useful for environments where the client does not have full Administrative permissions. This is a common condition when using MS Vista.
- Install the patch as directed by the included documentation.
- In addition to other files, the patch also includes a new webutil.pll file. This file must be used in place of your existing file. Once copied to the desired location, this file must be compiled to generate a .plx version of it. Refer to the Forms documentation for information about compiling Forms modules.
- On the server, locate webutil.cfg and open for edit. If you have created your own custom version of this file, open that one.
- In Section 2 of this file, add a new parameter as follows:
install.syslib.location.client.<OS> = <Path on client machine>
<OS> above, represents the numerical reference (constant) to the client platform. Refer to the following:
|Client Platform||OS Constant|
Be sure to refer to the Forms 10.1.2 Client Statement of Direction for a list of certified client configurations.
<Path on client machine> represents the fully qualified path to the location where libraries used on the client by WebUtil should be stored. (Patch 9282569 or newer must be used in order to use fully qualified paths.)
- A relative path can also be used. In this case, the path will be relative to the user’s Home directory (i.e. C:\Documents and Settings\<USER NAME>).
- If no value is set, the default behavior will be used and the libraries will be stored in the Java Runtime Environment Home \bin directory (JRE/lib on Unix platforms).
- If the path does not exist, it will attempt to be created.
At runtime, on the client, the WebUtil registration file (webutil.properties) will be written to the user’s Home directory. This will only occur the first time WebUtil is used by this user. Upon subsequent attempts to run a form with WebUtil, libraries (dll) will not be downloaded if webutil.properties already exists. The result of this file pre-existing means that attempts to run a form from another server or configuration, which may use a different webutil configuration may fail to work as expected because new dll files will not be downloaded. Deleting webutil.properties from the user’s Home directory will correct the problem.
An enhancement to this feature, which will address this limitation should be available in a future Forms patch. The release date of the update is unknown at this time. This note will be updated upon its availability.
The above limitation will not be an issue for environments which use the same destination path and files for webutil in all Forms applications.
The exact naming convention of the .properties file may differ slightly depending on which patches have been installed. Here are some examples of what names may be used:
- webutil.<CONFIG NAME>.properties
- webutil.<HOST NAME>.<CONFIG NAME>.properties
You have added the necessary changes to the configuration file, but attempts to run a form continue to write libraries to the JRE\bin directory.
1. The new webutil.plx has not been created and the old is still being found and used. Delete old versions of the webutil.pll/plx file and be sure to replace with the new one included with the patch. Be sure that the new file is in a directory which is included in the FORMS_PATH
2. In some cases, it may be necessary to unattach the webutil.pll from the form and reattach it. It may also be necessary to unattach the WebUtil Object Group and reattach it from the Object Library. After making these changes you MUST execute Compile ALL PL/SQL before saving then regenerating a new FMX.
3. Refer to the solution for Problem 2 below.
You have added the necessary changes to the configuration file, copied the new webutil.pll file and created a new webutil.plx and stored it in the correct location. You have reattached the new pll and WebUtil Object Library and recompiled the related form (fmb). Yet, attempts to run a form do not download the necessary libraries, thereby causing the form to not run correctly.
If previous attempt to run any Forms application included WebUtil, it is possible that the client side registration file (webutil.properties) has been stored on the client. If this file exists on the client, attempts to download will not occur. Locate and delete this file from the client machine. It may be found in one of these two locations:
- User’s Home directory (e.g. C:\Documents and Settings\<USER NAME>)
- JRE (Sun or Jinitiator) Home directory (e.g. C:\Program Files\Java\jre6)
You have added the necessary changes to the configuration file, but attempts to run a form continue to write libraries to the the user’s home directory and subdirectory.
You have not applied Patch 9282569 or newer. Download and install the latest Forms Bundle Patch. Be sure to review the included ReadMe or Release Notes before installing. Contact Support as needed to obtain the latest Patch ID number.
You have upgraded from an older Oracle Jinitiator or Sun JRE version. Prior to completing this upgrade, forms which used WebUtil worked correctly, but fail after upgrading.
Delete webutil.properties from the user’s Home directory and retest.