| Oracle8i SQLJ Developer's Guide and Reference Release 8.1.5 A64684-01 |
|
As discussed previously, you can specify a .jar file on the SQLJ command line in order to customize any profiles that the .jar file contains.
When using a .jar file for profiles, the manifest entry for each profile must contain the line:
SQLJProfile: TRUE
Accomplish this by: 1) creating a plain text file with two lines for each profile that will be included in the .jar file--one line specifying the path or package and name, and one line as above; and 2) using the jar utility -m option to input this file.
The two lines must be consecutive (no blank line in between), and there must be a blank line preceding line-pairs for additional profiles.
For example, presume your MyApp application (in the directory foo/bar) has three profiles, and you will be creating a .jar file that will include these profiles. Complete the following steps:
Name: foo/bar/MyApp_SJProfile0.ser SQLJProfile: TRUE Name: foo/bar/MyApp_SJProfile1.ser SQLJProfile: TRUE Name: foo/bar/MyApp_SJProfile2.ser SQLJProfile: TRUE
Presume you call this file MyAppJarEntries.txt
jar to create the .jar file, use the -m option to input your text file as follows (presume you want to call the .jar file myjarfile.jar):
jar -cvfm myjarfile.jar MyAppJarEntries.txt foo/bar/MyApp_SJProfile*.ser foo/bar/*.class
As the jar utility constructs the manifest during creation of the .jar file, it reads your text file and inserts the SQLJProfile: TRUE line into the manifest entry of each profile. It accomplishes this by matching the names in the manifest with the names you specify in your text file.
When you specify a .jar file on the SQLJ command line, each profile in the .jar file is deserialized and customized.
A .jar file is successfully customized only if all the profiles it contains are successfully customized. After a successful customization, each profile has been reserialized into a .ser file, the .jar file has been modified to replace the original .ser files with the customized .ser files, and the .jar file manifest has been updated to indicate the new entries.
If any error is encountered in the customization of any profile in a .jar file, then the .jar file customization has failed, and the original .jar file is left completely unchanged.