| Documentation Contents

# Multi-Version Support

This chapter includes the following topics:

- Unique `CLSID`
- Unique MIME Type and dll
- Unique Java Plug-in Registry Key
- Unique Java Plug-in Property File
- Unique Java Plug-in Trace and Log Files
- Unique Java Control Panel
- Unique Registry Keys for JRE/JDK
- Multi-version Support in Browser Sessions

Every new or patch release of Java Plug-in uniquely identifies registry keys, `CLSID`, MIME type and other resources.This allows multiple JRE versions to be deployed in the same environment.

### Unique `CLSID`

There is a unique CLSID for every new or patch version of Java Plug-in. (`CLSID` is used in the `OBJECT` tag with Internet Explorer running on Windows.) If you want a minimum 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 6 is as follows:

> `clsid:CAFEEFAC-0016-0000-0000-ABCDEFFEDCBA`

and you would find this in the registry:

> `HKEY_CLASSES_ROOT\CLSID\CAFEEFAC-0016-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 or patch version of Java Plug-in. MIME type identifies the type or version of the Java executable to be loaded and initialized by Java Plug-in. It is specified with the element type in the `EMBED` tag with supported Mozilla browsers and with `<PARAM name="type"> in the` `OBJECT` tag for Internet Explorer. If you want to use a minimum version of Java Plug-in with supported Mozilla browsers, specify the unique MIME type in the `EMBED` tag.

## Note MIME type will be supported by an `NP*.dll` with a unique name for every new or patch version. Thus, installing different version of Java Plug-in does not overwrite other `.dll` files in supported Mozilla browsers `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.6.0, the unique MIME type would be:

> `application/x-java-applet;jpi-version=1.6.0`

and it would be supported in the file:

> `NPJPI160.dll`

in supported Mozillas `Plugins` directory.

### Unique Java Plug-in Registry Key

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

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

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

#### `Example:`

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

> `HKEY_LOCAL_MACHINE\Software\JavaSoft\Java Plug-in\1.6.0`

### Unique Java Plug-in Property File

The property file is now named `deployment.properties`. It is located in the following 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 `testuser` on a Windows XP system, the value of `<User Application Data Folder>` would be `C:\Documents and Settings\testuser\Application Data`

The deployment.properties file is used by version 1.6.0. 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 property `javaplugin.outputfiles.path` can be used to override the default location for the trace and log files. For more information refer to the tracing and logging section in the Deployment Guide .

### Unique Java Control Panel

There is a unique Java Control Panel for every new or patch release. In 1.6.0, the filename for the Control Panel is `javacpl.exe`.

Only the latest installed version of the Java 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.6.0`

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

### Multi Version Support in Browser Sessions

Mutliple JRE versions can be installed on Windows platform. With multiple JRE's applets using MIME type `jpi-version` will work with Mozilla browsers only if you enable the following options:

- To enable the Mozilla Family option for JRE 6, open Java Control Panel and click Advanced > Default Java for browsers > Mozilla family
- To enable the Mozilla and Netscape option for JRE 1.5.0 or earlier, open Java Control Panel and click Advanced > <Applet> tag support > Mozilla and Netscape

To invoke Java Control Panel for a specific version of the JRE browse to the `<JRE_HOME>/bin` directory of that version and run javacpl.exe.

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

Copyright © 1995-2010 Sun Microsystems, Inc. All Rights Reserved. Please send comments using this Feedback page. | Java Technology