Multi-Version Support


This chapter includes the following topics:

So that multiple JRE versions may be deployed in the same environment, every new or patch release of Java Plug-in uniquely identifies registry keys, CLSID, MIME type and other resources.

Notes: (1) For an explanation of product version numbers, see the note in the section called "Using OBJECT, EMBED and APPLET Tags in Java Plug-in." The examples in this section are for version 1.5.0. (2) While the examples below are for Windows, multi-version support also applies to Solaris and Linux.

Unique CLSID

There is a unique CLSID for every new/patch version of Java Plug-in. (CLSID is used in the OBJECT tag with Internet Explorer running on Windows.) If you want a particular version of Java Plug-in to be used, then specify this unique CLSID in the OBJECT tag. The CLSID is stored in the registry in: 

HKEY_CLASSES_ROOT\CLSID\

In general the CLSID looks as follows:

CAFEEFAC-<major version>-<minor version>-<patch version>-ABCDEFFEDCBA

where major version, minor version and patch version are all 4-digit hexadecimal numbers.

Examples:

For example, the CLSID for Java Plug-in 1.5.0 is:

CAFEEFAC-0015-0000-0000-ABCDEFFEDCBA

and you would find this in the registry:

HKEY_CLASSES_ROOT\CLSID\CAFEEFAC-0015-0000-0000-ABCDEFFEDCBA

Note that CLSID is also stored in: 

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Code Store Database\Distribution Units\

Unique MIME Type and dll

There is a unique MIME type and NP*.dll for every new/patch version of Java Plug-in. (MIME type is used in the EMBED tag with Netscape and as a PARM in the OBJECT tag for Internet Explorer. NP*.dll is unique to Netscape.) If you want to use a particular version of Java Plug-in with Netscape, specify the unique MIME type in the EMBED tag.

Note that this MIME type will be supported by an NP*.dll with a unique name for every new/patch version. Thus, installing different version of Java Plug-in does not overwrite other .dll files in Navigator's Plugins directory.

In general MIME types look like this:

application/x-java-applet;jpi-version=<version>

where version includes the major, minor and patch version numbers.

MIME types are supported in the file

        NPJPI<modified version number>.dll

Example:

For Java Plug-in 1.5.0, the unique MIME type would be:

application/x-java-applet;jpi-version=1.5.0

and it would be supported in the file:

NPJPI150.dll

in Navigator's Plugins directory.

Unique Java Plug-in Registry Key

There is a unique Java Plug-in registry key for every new/patch version of Java Plug-in. The main Java Plug-in registry key is:

HKEY_LOCAL_MACHINE\Software\JavaSoft\Java Plug-in\<version number>

where the <version number> will include the major, minor and the patch version numbers.

Example:

For Java Plug-in 1.5.0 you will find the following in your registry:

HKEY_LOCAL_MACHINE\Software\JavaSoft\Java Plug-in\1.5.0

Unique Java Plug-in Property File

The property file is now named deployment.properties. It is located in the directory

<User Application Data Folder>\Sun\Java\Deployment

where <User Application Data Folder> is an application data folder specific to the user. As an example, for a user stanleyh on a Windows XP system, the value of <User Application Data Folder> would be

C:\Documents and Settings\stanleyh\Application Data

This property file is used by version 1.4.2, as well as all later versions.

The value of <User Application Data Folder> is obtained from the Win32 API function call SHGetFolderPath() with CSIDL_APPDATA.

Unique Java Plug-in Trace and Log Files

The default location for trace and log files is

<User Application Data Folder>\Sun\Java\Deployment\log

where <User Application Data Folder> is as defined above.

The names of the trace and log files are

plugin<modified version number>.trace
plugin<modified version number>.log

where the <modified version number> includes the major, minor and patch version numbers; e.g., plugin150.trace

The property javaplugin.outputfiles.path can be used to override the default location for the trace and log files.

Unique Java Plug-in Control Panel

There is a unique Java Plug-in Control Panel for every new or patch release. In 1.5.0, the filename for the Control Panel is javacpl.exe.

Only the latest installed version of the Java Plug-in Control Panel is available from the Windows Control Panel.

Unique Registry Keys for JRE/JDK

There are unique registry keys for every new or patch release of the JRE/JDK. These registry keys are located as follows:

HKEY_LOCAL_MACHINE\Software\JavaSoft\Java Runtime Environment\<version number>
HKEY_LOCAL_MACHINE\Software\JavaSoft\Java Development Kit\<version number>

where the <version number> includes the major, minor and the patch version numbers; e.g., 1.5.0

These keys allow Java Plug-in to locate the proper version of the JRE.

 

Multi-version Support in Browser Sessions

It is very important to note the following:

Multiple versions of the JRE can be run in different browser sessions. However, multiple versions can not be run in the same browser session. Should this be attempted, the user is warned and the attempt will fail.