### IBM(R) OS/2 WARP(R) DEVELOPER KIT,
JAVA(TM) 2 TECHNOLOGY EDITION, 1.3.1
INSTALLATION AND CONFIGURATION GUIDE

(c) Copyright IBM Corporation 1999, 2002. All rights reserved.

Note: The complete copyright citation is included in the Notices section of this document.

This guide provides information about the IBM OS/2 Warp Developer Kit, Java(TM) 2 Technology Edition, Version 1.3.1 (Developer Kit). This guide gives information on preparing to install the Developer Kit components, installing the Developer Kit components, and items to note after you install.

The Developer Kit is supported on the following OS/2(R) products:

- OS/2 Warp 4 with FixPak 5 or later for single-byte character set (SBCS) countries or regions
  or FixPak FX00505 for double-byte character set (DBCS) countries or regions
- OS/2 Warp Server for e-business
- Convenience Package for OS/2 Warp 4
- Convenience Package for OS/2 Warp Server for e-business
- Convenience Package 2 for OS/2 Warp 4
- Convenience Package 2 for OS/2 Warp Server for e-business
- WorkSpace On-Demand Version 2.0, with the latest FixPak

Note: For information on FixPak requirements or the IBM FixPak Web site, see the FixPaks section.

To obtain the IBM build and version number for the Developer Kit, type the following at a command line:

         java -version

### Contents

- 1.0 BEFORE YOU INSTALL
- 1.1 Installation requirements
- 1.2 Extracting the files for installation
- 1.3 File system partition considerations
- 1.4 FixPaks
- 1.5 Installing the Developer Kit as the default JVM

- 1.5.1 JAVA_HOME environment variable information

- 1.6 Netscape Communicator information
- 1.7 Joining split files
- 2.0 INSTALLING THE DEVELOPER KIT
- 2.1 GUI installation method

- 2.1.1 Desktop method
- 2.1.2 Command prompt method
- 2.1.3 Components not selectable during installation
- 2.1.4 Recovering from a failed installation
- 2.1.5 Correct FixPak level but cannot install

- 2.2 Unattended (CID) installation method
  - 2.2.1 Modifying the CID response file
  - 2.2.1.1 Component installation drives
  - 2.2.2 Starting the unattended installation
  - 2.2.3 CID Install "Successful" return code and failed installation
  - 2.2.4 Correct FixPak level but cannot install
- 2.3 NVDM/2 Installation considerations

- 2.3.1 Static command in NVDM/2 profile

- 2.4 Installing the Developer Kit on WorkSpace On-Demand 2.0

- 2.4.1 Installing the Developer Kit on a WorkSpace On-Demand 2.0 Server
- 2.4.2 Installing the Developer Kit on a WorkSpace On-Demand 2.0 Client

- 2.4.2.1 Unattended Install for a WorkSpace On-Demand 2.0 Client
- 2.4.2.2 Modifying the CONFIG.SYS files for WorkSpace On-Demand 2.0 Clients
- 2.4.2.3 Modifying FIT files and giving access to WorkSpace On-Demand 2.0 Clients
- 2.4.2.4 Assigning USER_HOME directory for WorkSpace On-Demand 2.0 Clients
- 2.4.2.5 Enabling fonts for WorkSpace On-Demand 2.0 Clients
- 2.4.2.6 Installing the Netscape Communicator plug-in for WorkSpace On-Demand 2.0 Clients
- 2.4.2.7 Installing additional Developer Kit components on the WorkSpace On-Demand 2.0 Client
- 2.4.2.8 Running the Java samples from a WorkSpace On-Demand 2.0 Client
- 2.4.2.9 Issuing a trust on a WorkSpace On-Demand 2.0 Client
- 2.4.2.10 The JIT compiler and a WorkSpace On-Demand 2.0 Client
- 2.4.2.11 Creating a Java plug-in control panel public application for the WorkSpace On-Demand 2.0 Client

- 2.5 Remote IPL installation method

- 2.5.1 Creating response files
- 2.5.2 Modifying the JAVA131.RSP File
- 2.5.3 Updating files for Feature Install
- 2.5.4 Starting the Remote IPL installation
- 2.5.5 Running the Java samples from a remote IPL client

- 2.5.5.1 Issuing a trust on a remote IPL client

- 3.0 AFTER YOU INSTALL
- 3.1 Additional sources of information
- 3.2 Installing additional components
- 3.3 AWT TextField and TextArea considerations
- 3.4 Modifying font properties file is not supported
- 3.5 Time problems in Java applets
- 3.6 Using the OS/2 High Memory Support to increase the Java heap size

- 3.6.1 Enabling OS/2 HMS
- 3.6.2 Enabling Java Heap Size to use OS/2 HMS
- 3.6.3 Limitations When using OS/2 HMS

- 3.7 Enhanced BigDecimal class
- 3.8 The Java plug-ins
  - 3.8.1 Installing the Java plug-in after installing Netscape Communicator
  - 3.8.2 Installing the Java plug-in after installing IBM Web Browser for OS/2
  - 3.8.3 The Java plug-in control panel
- 3.9 Turning off the JIT compiler
- 3.10 File name changes
- 3.11 Configuring the applet viewer
- 3.12 Specifying Java options and system properties
- 3.13 RMI Over IIOP

- 3.13.1 The IDL-to-Java compiler

- 3.13.1.1 IDL-to-Java compiler restrictions
- 3.13.1.2 IDL-to-Java compiler known problems

- 3.13.2 Additional information
- 3.13.3 RMI-IIOP terms

- 3.14 Java authentication and authorization service (JAAS)

- 3.14.1 Difference between IBM and Sun version of JAAS
- 3.14.2 Base installation

- 3.15 JNI programming information
- 3.16 Performance considerations
- 4.0 ADDITIONAL FONT PACKAGES
- 4.1 Installing additional font packages

- 4.1.1 CID install method
- 4.1.2 Font palette method

- 5.0 DOUBLE-BYTE CHARACTER SET (DBCS) INFORMATION
- 5.1 Installation panel text missing or too long in DBCS countries or regions
- 5.2 TrueType fonts must be installed on Chinese systems
- 5.3 Program temporary fixes and FixPaks for DBCS systems
- 5.4 Controlling Arabic number character display
- 5.5 Japanese environment settings on OS/2 Warp 4 Japanese version
- 5.6 Required fonts on OS/2 Warp Japanese version
- 5.7 Improving font quality on OS/2 Warp Server for e-business
- 6.0 UNINSTALLING THE DEVELOPER KIT
- 6.1 Desktop method
- 6.2 OS/2 command prompt method
- 6.3 Uninstalling the Developer Kit from WorkSpace On-Demand 2.0
- 6.4 Performing an unattended uninstallation
- 6.5 Removing the Developer Kit as the default JVM
- 7.0 KNOWN LIMITATIONS
- 8.0 NOTICES
- 9.0 TRADEMARKS

## 1.0 BEFORE YOU INSTALL

The Developer Kit consists of two packages: a Runtime Environment and a Toolkit. The Runtime Environment includes such components as Java Authetication and Authorization Service (JAAS), RMI-IIOP Runtime, and the Just-in-Time (JIT) compiler. The Toolkit contains such components as a toolkit, the Interactive Code Analysis Tool (ICAT) Debugger, and Samples.

Note: You cannot install the Toolkit unless you are also installing the Runtime Environment.

If you downloaded split files, refer to the Joining split files section for information on joining the split files into one installable file.

Before you install the Developer Kit, make a copy of your current CONFIG.SYS file. This ensures that you can return to your original environment if problems occur during installation.

References in this guide are as follows:

- OS/2 Warp 4 refers to the OS/2 Warp 4 client operating system and the WorkSpace On-Demand client (2.0 or 3.0).
- OS/2 Warp Server refers to the OS/2 Warp Server for e-business operating systems and the WorkSpace On-Demand server (2.0 or 3.0).
- Java 1.1.x refers to Java 1.1.1 for OS/2, Java 1.1.4 for OS/2 Warp, IBM OS/2 Warp Developer Kit, Java(TM) Edition, 1.1.6, IBM OS/2 Warp Developer Kit, Java Edition, 1.1.7, and IBM OS/2 Warp Developer Kit, Java Edition, 1.1.8
- Objects specific to this product are referred to as Java 1.3.1 objects.
- Netscape Communicator, unless directly specified, refers to Netscape Communicator 4.04 and higher.

### 1.1 Installation Requirements

Diskspace Requirements:

The following is a list of the Developer Kit's components and file sizes after installation. You should ensure that sufficient disk space is available before installing.

Component | Size
--- | ---
Runtime Environment | 25.0 MB
Toolkit | 35.0 MB
Samples | 5.0 MB
ICAT Debugger for OS/2 Java | 13.0 MB
Total Installed Size | 65.0 MB
List of the Developer Kit's components and file sizes after installation.

Hardware Requirements:

- A minimum of 32MB of random access memory (RAM) generally provides the best results when running the Developer Kit applications.
- A minimum of 48MB of RAM is recommended for applets running within a browser using the Java Plug-in.
- IBM recommends using an Intel(R) Pentium(R) (or comparable) processor or later for all OS/2 systems.
- The Developer Kit specification requires 256-color mode (or greater). The Developer Kit does not support Java applications and applets using the Abstract Window Toolkit (AWT) in 16-color mode.

Software Requirements:

- Feature Install 1.2.3 or later. You can download the latest Feature Install version from the IBM Software Choice Catalog of Features. Before you download Feature Install, be sure to check the installation requirements for Feature Install.
- Netscape Communicator 4.0.4. or later.
- TCP/IP Version 4.3. for OS/2 or later. You can download this product from the IBM Software Choice Catalog of Features.

### 1.2 Extracting the Files for Installation

To extract a self-extracting ZIP file, complete the following steps:

1. Create a subdirectory (if you haven't already done so) to store the self-extracting ZIP file on your hard drive.
2. Execute the file by typing the file name, and specifying the "-o" switch, at a command prompt from within the directory into which you downloaded the file.

   For example, for the Developer Kit, type the following:

       javaintk.exe -o

   For the Runtime Environment, type the following:

       javainrt.exe -o

If you downloaded split files and need to join them into one installable file, refer to the Joining split files section. Information on installing the Developer Kit is located in the Installing the Developer Kit section.

### 1.3 File System Partition Considerations

The following considerations apply when you install the Developer Kit:

- If you install the Toolkit, the Runtime Environment is automatically selected and installed to the same drive as the Toolkit.
- The Toolkit and Samples must be installed on a High Performance File System (HPFS) or Journaled File System (JFS) drive.
- The Runtime Environment and the ICAT Debugger components can be installed on a File Allocation Table (FAT) partition.
- If you are not installing the Toolkit, the Runtime Environment can be installed on either a FAT, HPFS, or JFS partition. For better performance, install them on an HPFS or JFS partition, which support long file names.

If you have only one hard disk with a single FAT partition, you have these options:

- Leave your system as it is and install only the Runtime component and, optionally, the ICAT Debugger component.
- Format the FAT partition for HPFS or JFS and reinstall all the software.
- Purchase a disk partitioning program, such as PartitionMagic. With sufficient space, a disk partitioning program reduces the size of the current partition (drive C) and creates a new partition (logical drive D), which can be formatted for HPFS.

Note: In this document, the term "partition" refers to any physical or logical drive.

### 1.4 FixPaks

The following considerations apply:

System FixPak Level Required for OS/2 Warp 4
SBCS | DBCS
FixPak 5 or later | FixPak FX00505
FixPak level considerations.

To use the euro in Java applications and applets
OS/2 Warp 4 | FixPak 6 or later
FixPak levels for using the euro.

Note: The display and code conversion of the euro are supported on the code pages containing the euro.

If you want to input the euro, the single-byte character set (SBCS) version of OS/2 is required. The U.S. International keyboard, UX103, supports input of the euro, but a standard English keyboard does not. In all cases, if you do not have a keyboard that supports input of the euro, you are able to display it, but you are not able to input it.

For information about downloading a particular FixPak, visit the IBM FixPak Web site at:
http://ps.software.ibm.com/pbin-usa-ps/getobj.pl?/pdocs-usa/otherservices.html

### 1.5 Installing the Developer Kit as the Default JVM

Installing the Developer Kit as the default Java Virtual Machine (JVM) allows you to execute the Developer Kit from a command prompt by default. You either can make the Developer Kit your default JVM permanently or temporarily. See the following sections for more information.

#### Permanently Making the Developer Kit your default JVM

To make the Developer Kit your default JVM permanently, you either can:

- Select it during the GUI install.
- Make the change manually, if you already have installed the Developer Kit (Version 1.3), by modifying the PATH statement in your CONFIG.SYS file.

To modify the PATH statement, add x:\JAVA131\JRE\BIN; to the PATH statement in your CONFIG.SYS file.

If you decide to keep a previous version of Java as the default JVM, do not select the checkbox during the GUI install or, if the Developer Kit is installed already, do not add the x:\JAVA131\JRE\BIN; directory to the PATH statement in your CONFIG.SYS file. If you already have a 1.1.x version of Java installed as the default JVM, it will remain as the default JVM.

Note: You might improve performance by removing references to previous releases of Java in the CONFIG.SYS file. However, there are known applications that will fail if you install the Developer Kit (version 1.3.x) as your default JVM.

#### Temporarily Using the Developer Kit for a Java session

If the Developer Kit is not installed as the default JVM, but you want to use it in a Java session, modify the PATH statement. For example,

         SET PATH=x:\JAVA131\JRE\BIN;%PATH%

where x is the drive where you installed the Developer Kit.

You may improve performance by modifying the BEGINLIBPATH and CLASSPATH statements as follows:

         SET BEGINLIBPATH=x:\JAVA131\JRE\BIN;x:\JAVA131\JRE\DLL;%beginlibpath%
         SET CLASSPATH=

Note: The CLASSPATH is set to a null value because the Developer Kit's JVM does not generally require the CLASSPATH to find system class files; CLASSPATH is used for application class files.

#### Temporarily Using Java 1.1.x JVM for a Java Session

If the 1.3.x Developer Kit is installed as the default JVM, but you want use a Java 1.1.x JVM in a Java session, modify the PATH statement. For example,

        SET PATH=x:\JAVA11\BIN;%PATH%

where x is the drive where you installed the 1.1.x Developer Kit.

If you removed the JAVA11 references from the CONFIG.SYS file, you need to modify the PATH, BEGINLIBPATH, and CLASSPATH statements as follows:

        SET PATH=x:\JAVA11\BIN;%PATH%
        SET BEGINLIBPATH=x:\JAVA11\BIN;x:\JAVA11\DLL;%beginlibpath%
        SET CLASSPATH=x:\JAVA11\LIB\CLASSES.ZIP;x:\JAVA11\SWING\SWINGALL.JAR;\;

Note: The CLASSPATH is set to the Java 1.1.x library files. The CLASSPATH setting for individual systems will differ.

To make the Developer Kit and the Java Plug-in execute, you must modify the PATH as shown above.

#### 1.5.1 JAVA_HOME Environment Variable Information

If you have installed the Developer Kit (version 1.3) as your default Java Virtual Machine (JVM) and you have:

- Manually added a JAVA_HOME environment variable to your CONFIG.SYS file for a previous level of the Developer Kit
- Command files that set the JAVA_HOME environment variable

You must do the following:

- Remove or update the JAVA_HOME environment variable in your CONFIG.SYS file.
- Modify the command files by removing or modifying the statements that set the JAVA_HOME environment variable.

### 1.6 Netscape Communicator Information

The following list contains information about using the Developer Kit and Netscape Communicator Version 4.04 and higher:

- #### Running Netscape Communicator While Installing the Developer Kit

  You cannot install the Developer Kit if you are running Netscape Communicator while executing the INSTALL command. You must close Netscape Communicator and then execute the INSTALL command.

- #### Netscape Communicator Version 4.04 and the JIT Compiler

  To run applets using Netscape Communicator Version 4.04, you must have the Just-in-Time (JIT) compiler turned on. However, if you want to have the JIT turned off and still use Netscape Communicator Version 4.04, you need the latest refresh level of Netscape Communicator Version 4.04. For information on the latest refresh level, visit the following Web site:

  http://ps.software.ibm.com

- #### Ghost Installation Checkboxes and Netscape Communicator Version 4.61

  If you have Netscape Communicator Version 4.61 and have not downloaded the latest refresh, you may experience "ghost" check boxes during installation. Although these "ghost" check boxes do not affect the installation of the Developer Kit, you might want to download the latest refresh from the following Web site:
  http://ps.software.ibm.com

- If you install the Java 1.3 Developer Kit and then either you remove the JAVA11 entries from your CONFIG.SYS file or remove the 1.1.x version of the Developer Kit from your system, you cannot run applets whose HTML pages have the <APPLET> tag, if they are launched from a Netscape 4.x browser. To run these applets from a Netscape 4.x browser, you must install the 1.3 Developer Kit's Java Plug-in and convert the applet's HTML file to use the Java Plug-in. Applets launched from the IBM Web Browser for OS/2, will work without any changes necessary even if Java 1.1.x JVM is not installed on the system.

### 1.7 Joining Split Files

You can join the split files using the Merge Utility or manually from a command prompt. The following subsections provide information on how to join the split files into one installable file.

Before you begin, be sure:

- That you have downloaded all the split files for a particular component and used the correct file name. If you did not download all the parts of a package or if you changed the file names of the parts when you downloaded them, the Merge Utility displays an error message and the package is not recreated.
- To specify all the file names and place them in the correct order. If you changed the file names when you downloaded them, specify the file names you used.
- That the name of the file that you combine the files into is the complete file name of the original package. (For example, the complete file name of the Runtime Environment is javainrt.exe.) This ensures that the installer utility will recognize the file.

#### Joining the Split Files Using the Merge Utility

Before you begin the process of joining the split files, you must download the Joiner Utility to the same directory as the split files that you downloaded. (The file name is joiner.exe.) The Joiner Utility contains the Merge Utility, which allows you to join the split files into one installable file. The Joiner Utility can be downloaded from the same page as the Developer Kit components on the Software Choice Catalog of Features.

Type `joiner` at a command prompt from within the directory where you downloaded the Joiner Utility. This command extracts the Merge Utility (merge.exe) and its required data files. The Merge Utility is used to join the split files.

Type `merge` at a command prompt from within the directory where you downloaded the Joiner Utility. This recreates any packages that are split into multiple files. To install the file, see Installing the Developer Kit.

#### Joining the split files manually from a command prompt

1. Ensure that you have downloaded all the split files for the component that you want to install into the same directory.
2. At a command prompt (from within the directory where you downloaded the split files), type the names of the split files and the complete file name. For example, if you wanted to join the split files for the Runtime Environment, type the following:

         copy /b javainrt.ex1 + javainrt.ex2 + javainrt.ex3 + javainrt.ex4 javainrt.exe

This recreates any packages that are split into multiple files. To install the file, see Installing the Developer Kit.

## 2.0 INSTALLING THE DEVELOPER KIT

The following sections give instructions and information about installing the Developer Kit. Before you install the Developer Kit or components associated with it, read Before You Install for information on extracting the files and the installation requirements.

### 2.1 GUI Installation Method

You can install the Developer Kit using either the desktop method or the command prompt method. See the following sections for instructions.

#### 2.1.1 Desktop Method

Note: If you have Netscape Communicator running while installing the Developer Kit, the installation will fail. You must shut down Netscape Communicator and then begin the installation process.

To install using the INSTALL.EXE object, follow these steps:

1. Open the OS/2 System folder.
2. Open the Drives object.
3. Open the drive where the Developer Kit files were extracted.
4. Open the folder where the Developer Kit files were extracted.
5. Double-click the INSTALL.EXE object to start the installation program.

The INSTALL.EXE command brings up a Graphical User Interface (GUI) with buttons that specify the languages that you can install the program in. Click the language you prefer and the installation program leads you through the installation steps.

A Developer Kit for OS/2 folder is created in the Programs folder on OS/2 Warp 4 and on the Desktop for all the other supported platforms.

After the installation is complete, if you want to clean up the directory in which the Developer Kit files were extracted, select the DELINST.CMD object from the Developer Kit folder. This removes the Developer Kit files and subdirectories from the directory where they were extracted. Files and subdirectories not extracted from the Developer Kit are not erased. You also can manually delete the files you downloaded.

#### 2.1.2 Command Prompt Method

Note: If you have Netscape Communicator running while installing the Developer Kit, the installation will fail. You must shut down Netscape Communicator and then begin the installation process.

To start installation, make sure that you are in the directory where the Developer Kit files were extracted. At the OS/2 command prompt, type:

         INSTALL

The install command brings up a GUI with buttons that specify the languages that you can install the program in. Click the language you prefer and the installation program leads you through the installation steps.

A Developer Kit for OS/2 folder is created in the Programs folder on OS/2 Warp 4 and on the Desktop for all the other supported platforms.

After the installation is complete, if you want to clean up the directory in which the Developer Kit files were extracted, select the DELINST.CMD object from the Developer Kit folder. This removes the Developer Kit files and subdirectories from the directory where they were extracted. Files and subdirectories not extracted from the Developer Kit are not erased. You also can manually delete the files you downloaded.

#### 2.1.3 Components Not Selectable During Installation

If you are using the GUI to install the Developer Kit and components are not selectable, you might not have downloaded and extracted the ZIP file containing the component you need. Return to the Software Choice Catalog of Features page and download the self-extracting ZIP file that you need.

All components of the Developer Kit require that you download and install the Runtime Environment component (or have previously installed the Runtime Environment component) and restart the system.

#### 2.1.4 Recovering from a Failed Installation

If your installation of the Developer Kit fails, check for and delete any remaining installation objects. If you do not delete these installation objects, future installations might fail with a message stating that one or more components were not installed because the object is read-only or in use by another process.

For a Configuration, Installation, and Distribution (CID) install, the icon for the installation object is a blue box with a red ribbon and is located on the desktop. For an attended installation, the object is in the x:\os2\install\ folder (where x is the boot drive). To delete the object, click the object using the right mouse button and click Delete on the menu.

Alternately, go to the directory containing the object and delete the entire directory tree. The directory is named either "Install object" or "Java 1.3 for OS/2" depending on when the installation failed.

After deleting the installation object, shut down and restart the system.

#### Cannot Remove the Install Object?

If, after following the instructions listed previously, the install object was not removed, do the following:

1. Go to an OS/2 command prompt.
2. Change to the boot drive, and then change to the os2\install directory.
3. Remove the Java 1.3.1 for OS/2 directory and all subdirectories.
4. Restart the system.

#### 2.1.5 Correct FixPak level but cannot install

If you are certain that your system meets the required FixPak levels, but are unable to install due to the automated FixPak checking, you can disable the automated FixPak checking. To do this, use either of the following methods:

Method One:

1. Edit your CONFIG.SYS file, adding the statement JAVANOFPK=YES.
2. Restart the system and complete the installation process for the Developer Kit again.

Method Two:

1. In the directory where you have ran the self-extracting files, change into the directory for your desired language.
2. Edit CHECK.CMD file. Look for the statement:

            disablecheck="NO"

   Change the "NO" to "YES". (This statement is located on or about line 12.)
3. Change back to the directory where you executed the self-extracting files and execute the files again.

### 2.2 Unattended (CID) installation method

Unattended or configuration, installation, and distribution (CID) installations of the Developer Kit are handled by a Command Line Interface to Feature Install (CLIFI) and can take 15 to 20 minutes or more. After the installation program finishes, the system must be restarted to complete the installation.

CLIFI requires two response files: the Developer Kit response file (JAVA131.RSP) and a customized response file where users can override the default selections. The CID.RSP file is included in the installation package as an example of the customized response file; this file and CID.CMD file need to be modified for unattended installations.

Note: Feature Install version 1.2.3 or later is required for unattended (CID) installations. Also, if you have Netscape Communicator running while installing the Developer Kit, the installation will fail. You must shut down Netscape Communicator and then begin the installation process.

#### 2.2.1 Modifying the CID Response File

Where appropriate, the CID.RSP file contains variables that allow you to select which components to install and the target drive and directory. By default, the CID.RSP file is set to install all the components of the Developer Kit. You can modify this response file to select which components you want to install. Be sure to download and extract all of the files you need before you start the installation. Also, if you install the Toolkit, install the Runtime Environment as well, even if the Runtime Environment is already installed.

The following table lists the selectable components and variable names:

Component | Variable
Runtime environment | JV13Runtime
Toolkit | JV13Toolkit
Samples | JV13Samples
OS/2 ICAT Debugger for Java | JV13 Debugger
List of the selectable components and variable names.

In the CID.RSP file, set "selection=1" for each component you want to install and set "selection=0" for each component you do not want to install. For example, to:

- Install the Runtime Environment component and the OS/2 ICAT Debugger component
- Configure the Java Plug-in for Netscape 4.x
- Configure the Java Plug-in for IBM Web Browser for OS/2
- Install the Developer Kit as the default JVM
- Not install the Toolkit component or the Samples component

Set the following variables as shown:

         Java13.Continue=UNATTENDED
         Java13.LicenseAgree=AGREE
         JV13Runtime.Selection=1
         JV13RuntimeConfig.Selection=1
         JV13RuntimeUrls.Selection=1
         JV13NSFiles.Selection=1
         JV13MZFiles.Selection=1
         Java13.RUNDRV=x:
         JV13DefaultJVM.Selection=1
         JV13Samples.Selection=0
         JV13SamplesConfig.Selection=0
         JV13Samplesurls.Selection=0
         JV13Samples.SMPDRV=x:
         JV13Toolkit.Selection=0
         JV13ToolkitConfig.Selection=0
         JV13Debugger.Selection=1
         JV13Debuggerurls.Selection=1
         JV13Debugger.DBGDRV=x:

This is an example. See the CID.RSP file for specific components and their associated variables. x is the drive where the component is installed.

There is a JV13xxConfig.Selection variable associated with each JV13xx.Selection variable. The JV13xxConfig.Selection variable must be set to the same value as the JV13xx.Selection variable. For example, if you set JV13Toolkit.Selection=0, you also must set JV13ToolkitConfig.Selection=0 (where xx is the component name).

In the preceding example, there are several variables that must be set to have the Developer Kit install properly. The variables and their definitions are:

The JV13.LicenseAgree | License Agreement Values for this variable are DISAGREE and AGREE. Set this variable to AGREE to signify that you have read the license agreement and agree to the terms. If you do not change the variable to the AGREE, the Developer Kit will not install.
JV13DefaultJVM.Selection | JVM Set this variable to the value "1" if you want to install the Developer Kit as the default JVM.
JV13MZFiles | Plug-in for IBM Web Browser for OS/2 Set this variable to the value "1" if you want to configure the Plug-in for IBM Web Browser for OS/2.
JV13NSFiles | Netscape Plug-in Set this variable to the value "1" if you want to configure the Netscape Plug-in.

To suppress the confirmation windows during installation, set the following variable as shown:

        java13.continue=UNATTENDED

##### 2.2.1.1 Component Installation Drives

The Toolkit is installed in the \JAVA131 directory on the target drive. If you install the Toolkit, the Runtime Environment is automatically installed to the same drive as the Toolkit. The Runtime Environment is a prerequisite for the Toolkit, Samples, and Debugger components.

The target drive for the Samples and ICAT components is specified by setting the drive to the desired values. If the Developer Kit exists on the target drive, the installation program replaces it.

#### 2.2.2 Starting the Unattended Installation

The CID.CMD file contains a sample CLIFI command for a CID installation. The installation process has been modified to include a multilingual installation; therefore, you must specify your language variable in the CID.RSP files. The language variables are as follows:

Language | Language Variable
English | en
French | fr
German | de
Italian | it
Japanese | jp
Portuguese, Brazilian Version | br
Simplified Chinese | cn
Spanish | es
Traditional Chinese | tw
Language and the language variable associated with it.

The CLIFI command also can be entered as a single-line command at an OS/2 command prompt, as shown below:

         clifi /a:c /r2:cid.rsp /r:xx\JAVA131.rsp /b:c: /s:d:\tmp\xx
         /l1:ciderr.log /l2:cidhist.log

Use the following variable list as a reference in setting the variables in the files mentioned above.

where:

/r2 | represents drive, path, and name for the user response file
/r | Specifies the fully qualified location of the Feature Install response file.
xx | Specifies the preferred language variable.
/b | Specifies the boot drive.
/s | Specifies the fully qualified location of the extracted Developer Kit files.
/l1 and /l2 | Specifies the fully qualified locations of the optional log files. Refer to these files, in addition to the \os2\install\wpinstal.log file on the boot drive, if problems occur during installation.

To suppress the confirmation windows during installation, set the following variable as shown:

        java13.continue=UNATTENDED

#### 2.2.3 CID Install "Successful" return code and failed installation

If you received a "successful" CID return code after the installation of the Developer Kit, but the installation failed, it might be because:

- You did not modify your response file to say "AGREE" after the Java13LicenseAgree variable.
- The correct FixPak level is not on your system.

It is recommended that CID administrators complete a FixPak check to ensure that the correct FixPak level is available. (See the FixPaks section for more information.) You can use the check.cmd file located in the x:\Java131 directory as an example for writing a script that checks for FixPak levels. (x:\ is the drive where the Developer Kit is installed.)

#### 2.2.4 Correct FixPak Level But Cannot Install

If you are certain that your system meets the required FixPak levels, but you are unable to install due to the automated FixPak checking, you may disable the automated FixPak checking. To do this, use either of the following methods:

Method One:

1. Edit your CONFIG.SYS file, adding the statement JAVANOFPK=YES.
2. Restart the system and complete the installation process for the Developer Kit again.

Method Two:

1. In the directory where you ran the self-extracting files, change into the directory for your desired language.
2. Edit CHECK.CMD file. Look for the statement:

            disablecheck="NO"

   Change the "NO" to "YES". (This statement is located on or about line 12.)
3. Run the CID process again.

### 2.3 NVDM/2 installation Considerations

A NetView(R) Distribution Manager/2 (NVDM/2) CID installation requires creating a profile and then building and cataloging a change file. The NVDM/2 profile allows you to specify only one response file; however, the Developer Kit unattended installation requires two response files. In addition, variable and argument handling in NVDM/2 is different from that used in Feature Install, which is used to install the Developer Kit.

Note: If you have Netscape Communicator running while installing the Developer Kit, the installation will fail. You must shut down Netscape Communicator and then begin the installation process.

In the following section are two methods that you can use to install the Developer Kit using NVDM/2.

#### 2.3.1 Static Command in NVDM/2 Profile

In the NVDM/2 profile, specify all the CLIFI options in the PARMS variable. The parameters must be on a single line and enclosed in double quotation marks:

         Program=c:\os2\install\clifi.exe
         Parms="/a:c /r2:cid.rsp /r:\xx\JAVA131.rsp /b:c: /s:d:\tmp\xx
         /l1:ciderr.log /l2:cidhist.log"

This method requires you to modify the profile whenever the source directory or log file names are changed. Alternatively, you could replace these values with workstation-specific variable values, as shown below:

         Program=c:\os2\install\clifi.exe
         Parms="/a:c /r2:$(ResponseFile) /r:$(SourceDir)\xx\JAVA131.rsp
         /b:c: /s:$(SourceDir\xx) /l1:$(LogFile1) /l2:$(LogFile2)"
         ResponseFile=$(WorkstatName).rsp
         SourceDir=d:\tmp
         LogFile1=$(WorkstatName).log
         LogFile2=$(WorkstatName).lg2

This second method requires a separate response file for each workstation and requires WorkstatName to be set appropriately.

Use the following variable list as a reference in setting the variables in the files mentioned above.

where:

d: | Specifies the temp directory.
/r | Specifies the fully qualified location of the Feature Install response file.
xx | Specifies the preferred language variable.
/b | Specifies the boot drive.
/s | Specifies the fully qualified location of the extracted Developer Kit files.
/l1 and /l2 | Specifies the fully qualified locations of the optional log files. Refer to these files, in addition to the \os2\install\wpinstal.log file on the boot drive, if problems occur during installation.

### 2.4 Installing the Developer Kit on WorkSpace On-Demand 2.0

Note: If you have Netscape Communicator running while installing the Developer Kit, the installation will fail. You must shut down Netscape Communicator and then begin the installation process.

The WorkSpace On-Demand 2.0 product includes Java 1.1.6 for OS/2 Warp. You can install the Developer Kit (version 1.3) on WorkSpace On-Demand Servers and Clients. The Developer Kit coexists with Java 1.1.x for OS/2 Warp. See the following sections for installing the Developer Kit on WorkSpace On-Demand Servers and Clients and information on installing the Developer Kit as the default JVM.

#### 2.4.1 Installing the Developer Kit on a WorkSpace On-Demand 2.0 Server

To install the Developer Kit on a WorkSpace On-Demand Server, use the GUI. See the GUI Installation Method section of this guide for instructions.

#### 2.4.2 Installing the Developer Kit on a WorkSpace On-Demand 2.0 Client

To install the Developer Kit on a WorkSpace On-Demand Client, use an unattended (CID) installation. You can use the instructions in the Unattended (CID) Installation Method section and use the CID.CMD and WSOD2.RSP files that are included in the Developer Kit installation package. The steps for installation are completed on a WorkSpace On-Demand 2.0 Server.

Note: If you want to install the Developer Kit as your default JVM on WorkSpace On-Demand Clients, references to the `z:\JAVA131` directories and files need to be placed before the `z:\JAVA11` references in the CONFIG.SYS file.

##### 2.4.2.1 Unattended Install for a WorkSpace On-Demand 2.0 Client

Complete the following steps:

1. In the CID.CMD file, change `/r2:cid.rsp` to `/r2:wsod2.rsp` (where `/r2` is the drive, path, and name for the user response file).
2. As described in Starting the unattended installation section of this guide:
   - Replace `/s:d:\tmp\xx` in the CID.CMD file with the drive and directory where you unzipped the install package (where `xx` is the preferred language variable).
   - Be sure that `/b:z` in the CID.CMD file points to the client boot drive.
3. Verify that the selections in the WSOD2.RSP files are appropriate for what you want to install. By default the Runtime Environment is selected; all other components are deselected. Be sure to download and extract all of the files you need. Also, after you read the license agreement and agree to the terms, the Java13.LicenseAgree selection variable must be set to AGREE in the WSOD2.RSP file. If you do not change this variable to AGREE, the Runtime Environment will not install.
4. Run the updated CID.CMD file by typing the file name at a command prompt.

To complete the unattended install, see the following sections.

##### 2.4.2.2 Modifying CONFIG.SYS files for WorkSpace On-Demand 2.0 Clients

To enable the Developer Kit's Runtime Environment component, a WorkSpace On-Demand administrator must make the following additions to the CONFIG.SYS files for the WorkSpace On-Demand Clients:

Add the following:

`z:\JAVA131\jre\dll` | to the LIBPATH statement
`z:\JAVA131\jre\bin;` | to the SET PATH statement

You can find and edit the CONFIG.SYS file for WorkSpace On-Demand Clients based on the following two options:

- From the server for a specific user, the CONFIG.SYS file is located in the following drive and directory:

         [rpldrive]:\ibmlan\rpl\machines\[client name]\config.sys

- To modify the default CONFIG.SYS for each machine created using the individual machine class, the CONFIG.SYS file is located in the following drive and directory:

         [rpldrive]:\ibmlan\rpl\machines\BB20.xx\[machine class]\config.sys

where:

[rpldrive] | Specifies the drive where the RPL directory is installed.
[client_name] | Specifies the name of the WorkSpace On-Demand Client.
xx | Specifies the country or region code.
[machine_class] | Specifies the name of the machine.

##### 2.4.2.3 Modifying FIT files and giving access to WorkSpace On-Demand 2.0 Clients

To enable the Runtime Environment, a WorkSpace On-Demand administrator must make the following addition to the File Index Table (FIT) files for the WorkSpace On-Demand clients:

Add the following:

         z:\JAVA131      BB20.xx\JAVA131

You can find and edit the FIT files for WorkSpace On-Demand Clients based on the following two options:

- From the server for a specific user, the [client_name].FIT file is located in the following drive and directory:

         [rpldrive]:\ibmlan\rpl\fits\[client_name].FIT

- To modify the default FIT, the DFBB20xx.FIT file is located in the following drive and directory:

         [rpldrive]:\ibmlan\rpl\fits\DFBB20xx.FIT

A WorkSpace On-Demand administrator also must grant read and execute access to the JAVA131 directory for the WorkSpace On-Demand Clients.

Run the following LAN Server commands:

      NET ACCESS [rpldrive]\ibmlan\rpl\bb20.xx\JAVA131 /ADD RPLGROUP:RX
      NET ACCESS [rpldrive]\ibmlan\rpl\bb20.xx\JAVA131 /APPLY

where:

[rpldrive] | Specifies the drive where the RPL directory is installed.
[client_name] | Specifies the name of the WorkSpace On-Demand Client.
xx | Specifies the country or region code.

##### 2.4.2.4 Assigning USER_HOME directory for WorkSpace On-Demand 2.0 Clients

The USER_HOME directory for the Developer Kit needs to have read and write access as this is where security certificates and plug-in properties files are created and accessed. For example, to specify `z:\JAVA13_RW` as the USER_HOME directory and to give it read and write access, add the following to the FIT file (this must be entered as one continuous line):

         z:\JAVA13_RW      \\server_name\WRKFILES\client_name\JAVA_RW

Substitute the names of the WorkSpace On-Demand Server and Client for server_name and client_name. z is the drive where you installed the Runtime Environment. This could also be entered in the default FIT file.

A WorkSpace On-Demand administrator also must make the following addition to the OS2.INI files for the WorkSpace On-Demand Clients. The addition should be NULL terminated.

Add the following:

         Application = Java131
         Key = USER_HOME
         Value = z:\JAVA13_RW

See the WorkSpace On-Demand 2.0 Handbook for information on how to use an INI Editor or the NET APPPARM Command to add INI file entries for WorkSpace On-Demand Clients. You can find the OS2.INI file for WorkSpace On-Demand Clients one of two ways:

- From the server for a specific user:

           [rpldrive]:\ibmlan\rpluser\[client name]\os2\os2.ini

- To modify the default OS2.INI for each machine created using the individual machine class, the OS2.INI file is located in the following drive and directory:

           [rpldrive]:\ibmlan\rpl\machines\BB20.xx\[machine class]\os2\os2.ini

where:

z | Specifies the drive where the Runtime Environment is installed for the client.
[rpldrive] | Specifies the drive where the RPL directory is installed.
[client_name] | Specifies the name of the WorkSpace On-Demand Client.
xx | Specifies the country or region code.
[machine class] | Specifies the name of the machine class used by a WorkSpace On-Demand Client.

##### 2.4.2.5 Enabling Fonts for WorkSpace On-Demand 2.0 Clients

To enable fonts for the Runtime Environment, a WorkSpace On-Demand administrator must make the following additions to the OS2.INI files for the WorkSpace On-Demand Clients. All additions are NULL terminated. z specifies the drive where the Runtime Environment is installed for the client.

Add the following:

      Application = PM_Fonts
      Key = courtbi_.ttf
      Value = z:\JAVA131\jre\lib\fonts\COURTBI_.TTF
      Application = PM_Fonts
      Key = courtb_.ttf
      Value = z:\JAVA131\jre\lib\fonts\COURTB_.TTF
      Application = PM_Fonts
      Key = courti_.ttf
      Value = z:\JAVA131\jre\lib\fonts\COURTI_.TTF
      Application = PM_Fonts
      Key = court_.ttf
      Value = z:\JAVA131\jre\lib\fonts\COURT_.TTF
      Application = PM_Fonts
      Key = lucb.ttf
      Value = z:\JAVA131\jre\lib\fonts\LUCB.TTF
      Application = PM_Fonts
      Key = lucbb.ttf
      Value = z:\JAVA131\jre\lib\fonts\LUCBB.TTF
      Application = PM_Fonts
      Key = lucbbi.ttf
      Value = z:\JAVA131\jre\lib\fonts\LUCBBI.TTF
      Application = PM_Fonts
      Key = lucbi.ttf
      Value = z:\JAVA131\jre\lib\fonts\LUCBI.TTF
      Application = PM_Fonts
      Key = lucs.ttf
      Value = z:\JAVA131\jre\lib\fonts\LUCS.TTF
      Application = PM_Fonts
      Key = lucsb.ttf
      Value = z:\JAVA131\jre\lib\fonts\LUCSB.TTF
      Application = PM_Fonts
      Key = lucsbi.ttf
      Value = z:\JAVA131\jre\lib\fonts\LUCSBI.TTF
      Application = PM_Fonts
      Key = lucsi.ttf
      Value = z:\JAVA131\jre\lib\fonts\LUCSI.TTF
      Application = PM_Fonts
      Key = luct.ttf
      Value = z:\JAVA131\jre\lib\fonts\LUCT.TTF
      Application = PM_Fonts
      Key = luctb.ttf
      Value = z:\JAVA131\jre\lib\fonts\LUCTB.TTF
      Application = PM_Fonts
      Key = luctbi.ttf
      Value = z:\JAVA131\jre\lib\fonts\LUCTBI.TTF
      Application = PM_Fonts
      Key = lucti.ttf
      Value = z:\JAVA131\jre\lib\fonts\LUCTI.TTF
      Application = PM_Fonts
      Key = thonbi_.ttf
      Value = z:\JAVA131\jre\lib\fonts\THONBI_.TTF
      Application = PM_Fonts
      Key = thonburi.ttf
      Value = z:\JAVA131\jre\lib\fonts\THONBURI.TTF
      Application = PM_Fonts
      Key = thonb_.ttf
      Value = z:\JAVA131\jre\lib\fonts\THONB_.TTF
      Application = PM_Fonts
      Key = thoni_.ttf
      Value = z:\JAVA131\jre\lib\fonts\Thoni_.TTF

See the WorkSpace On-Demand Handbook 2.0 for information on how to use an INI Editor or the NET APPPARM Command to add INI file entries for WorkSpace On-Demand Clients. You can find the OS2.INI file for WorkSpace On-Demand Clients based on the following two options:

- From the server for a specific user, the OS2.INI file is located in the following drive and directory:

         [rpldrive]:\ibmlan\rpluser\[client name]\os2\os2.ini

- To modify the default OS2.INI for each machine created using the individual machine class, the OS2.INI file is located in the following drive and directory:

         [rpldrive]:\ibmlan\rpl\machines\BB20.xx\[machine class]\os2\os2.ini

where:

[rpldrive] | Specifies the drive where the RPL directory is installed.
[client name] | Specifies the name of the WorkSpace On-Demand Client.
xx | Specifies the country or region code.
[machine class] | Specifies the name of the machine class used by a WorkSpace On-Demand Client.

##### 2.4.2.6 Installing the Netscape Plug-in for WorkSpace On-Demand 2.0 clients

To install the Java Plug-in for the Netscape 4.x browser, a WorkSpace On-Demand administrator must copy the npjava.dll file to the WorkSpace On-Demand Clients' Netscape 4.x Plug-in directory. Type the following command to copy the file:

         copy d:\JavaTemp\package\npjava.dll  [rpldrive]:\ibmlan\rpl\bb20.xx\NETSCAPE\PROGRAM\PLUGINS\*.*

To install the Java Plug-in for the IBM web-browser for OS/2, copy the npoji6.dll file to the WorkSpace On-Demand Clients' Web-browser Plug-in directory. Type the following command to copy the file:

         copy d:\JavaTemp\package\npoji6.dll  [rpldrive]:\ibmlan\rpl\bb20.xx\os2\os2web\PLUGINS\*.*

where:

d:\JavaTemp | Specifies the fully qualified location of the extracted Runtime Environment files.
[rpldrive] | Specifies the drive where the RPL directory is installed.
xx | Specifies the country or region code.

In addition, a WorkSpace On-Demand administrator must make the following addition to the OS2.INI files for the WorkSpace On-Demand Clients. All additions are NULL terminated.

Add the following:

         Application = Java Plug-in
         Key = JAVA_HOME
         Value = z:\JAVA131\jre

where z specifies the drive where the Runtime Environment is installed for the client.

See the WorkSpace On-Demand Handbook 2.0 for information on how to use an INI Editor or the NET APPPARM command to add INI file entries for WorkSpace On-Demand clients. You can find the OS2.INI file for WorkSpace On-Demand Clients one of two ways:

- From the server for a specific user, the OS2.INI file is located in the following drive and directory:

         [rpldrive]:\ibmlan\rpluser\[client name]\os2\os2.ini

- To modify the default OS2.INI for each machine created using the individual machine class, the OS2.INI file is located in the following drive and directory:

         [rpldrive]:\ibmlan\rpl\machines\BB20.xx\[machine class]\os2\os2.ini

where:

[rpldrive] | Specifies the drive where the RPL directory is installed.
[client name] | Specifies the name of the WorkSpace On-Demand Client.
xx | Specifies the country or region code.
[machine class] | Specifies the name of the machine class used by a WorkSpace On-Demand Client.

##### 2.4.2.7 Installing additional Developer Kit components on the WorkSpace On-Demand 2.0 Client

If you want to install components other than the Runtime Environment for the WorkSpace On-Demand Client, you can select these components in the WSOD2.RSP file.

If you install the Toolkit, a WorkSpace On-Demand administrator must make the following additions to the CONFIG.SYS files for the clients.
Add the following:

`x:\java131\bin;` | to the SET PATH statement
`z:\JAVA131\lib;` | to the SET LIB statement
`z:\JAVA131\include;` | to the SET INCLUDE statement

where z:\JAVA131 is the drive and directory where the Toolkit is installed for the client.

##### 2.4.2.8 Running the Java samples from a WorkSpace On-Demand 2.0 Client

The WorkSpace On-Demand server administrator must add the following lines to the RPL\FITS\client_name.FIT file to give the WorkSpace On-Demand Client the ability to run the samples provided in the Samples component:

         z:\JAVA131\WEBLOGS \\server_name\WRKFILES\client_name\JAVA131\WEBLOGS
         z:\JAVA131\HOTJAVA \\server_name\WRKFILES\client_name\JAVA131\HOTJAVA

Substitute the names of the remote IPL server and the remote IPL client for server_name and client_name. z is the drive where you installed the Developer Kit. This also could be entered in the default FIT file.

The remote IPL clients can compile the sample code if the samples are placed in a directory to which the remote IPL client has write access.

##### 2.4.2.9 Issuing a trust on WorkSpace On-Demand 2.0 Clients

If you are issuing a trust (giving access) to connect to a Web server, the IDENTITYDB.OBJ file needs to be read and write. Add the following to the FIT file to make the connection:

         z:\JAVA131\WEBLOGS        \\server_name\WRKFILES\client_name\JAVA131\WEBLOGS
         z:\JAVA131\HOTJAVA        \\server_name\WRKFILES\client_name\JAVA131\HOTJAVA
         z:\JAVA131\IDENTITYDB.OBJ \\server_name\WRKFILES\client_name\JAVA131\IDENTITYDB.OBJ

##### 2.4.2.10 The JIT Compiler and a WorkSpace On-Demand 2.0 Client

On a WorkSpace on Demand Client system, the following command is added to the CONFIG.SYS file if version 1.1.6 of the Developer Kit was installed during the WorkSpace On-Demand Server installation:

        set java_compiler=xxx

This command turns off the Just-in-Time (JIT) compiler.

To turn the JIT compiler on, remove the command listed previously from your CONFIG.SYS file. You can find and edit the file based on the following two options:

- From the server for a specific user, the CONFIG.SYS file is located in the following drive and directory:

         [rpldrive]:\ibmlan\rpl\machines\[machine class]\config.sys

- To modify the default CONFIG.SYS for each machine created using the individual machine class, the CONFIG.SYS file is located in the following drive and directory:

         [rpldrive]:\ibmlan\rpl\machines\BB20.xx\[machine class]\config.sys

Use the following variable list as a reference in setting the variables in the files mentioned above:

where:

[rpldrive] | Specifies the Request Parameter List.
xx | Specifies the country or region code.
[machine class] | Specifies the name of the machine class used by a WorkSpace On-Demand Client.

##### 2.4.2.11 Creating a Java Plug-in Control Panel Public Application for the WorkSpace On-Demand 2.0 Client

To create a public application for the Java Plug-in Control Panel that runs on a WorkSpace On-Demand 2.0 Client, you must provide access to the Netscape files. The access controls are specified in the Netscape APPPOST.FIT file.

The following example shows how to create a public application for running the Java Plug-in Control Panel:

         net app jctrlpnl /remark:"Java Plug-in Control Panel"
           /appdir:z:\java131\jre\bin
           /command:"jctrlpnl.cmd"
           /type:wsod /interface:pm /add
        net appparm jctrlpnl NCC_POSTFITS=z:\netscape\program\apppost.fit
           /add /placement:b

z:\java131 is where the Java Developer Kit image is installed and z:\netscape is where the Netscape image is installed.

### 2.5 Remote IPL installation method

A remote IPL installation requires creating two response files and setting up the appropriate directories and files on the remote IPL server.

Follow these steps for each client to be installed:

1. Place the extracted Developer Kit installation files on the remote IPL server.
2. Run the GENFIRPL command. (See the Creating Response Files section for information.)
3. Run the CLIFI command for one remote IPL client. (See the Starting the Remote IPL Installation section for information.)
4. Modify the client FIT file (See the sections Updating Files for Feature Install and Running the Java Samples from a Remote IPL Client.)

#### 2.5.1 Creating response files

After placing the extracted Developer Kit installation files on the remote IPL server, the GENFIRPL command is used to generate two response files: FILES.RSP for the remote IPL server and JAVA131.RSP for the remote IPL client. The following is a sample GENFIRPL command. The command must be entered on a single line.

         genfirpl /m:c:\javacode\xx  /r:c:\ibmlan\rpl
         /u:c:\ibmlan\rpluser  /f:c:\javacode\xx\JAVA131.rsp
         /c:client_name  /b:x:

The remote IPL client must not be running when the GENFIRPL command is issued. One GENFIRPL command must be done for each remote IPL client, specifying the appropriate client name and boot drive.

Use the following variable list as a reference in setting the variables in the file or files mentioned above:

where:

/m | Specifies the directory containing the Developer Kit installation files on the remote IPL server.
xx | Specifies the preferred language variable.
/r | Specifies the RPL directory.
/u | Specifies the RPLUSER directory.
/f | Specifies the fully qualified name of the response file for the remote IPL client.
/c | Specifies the name of the remote IPL client.
/b | Specifies the remote IPL client's boot drive.
/nf | Suppresses Java file transfer. Use this flag when installing additional remote IPL clients, after the first one, to prevent the Developer Kit files from being installed again for each new client.

#### 2.5.2 Modifying the JAVA131.RSP file

The JAVA131.RSP file contains variables that allow you to select which components to install and the drive and directory. By default, the JAVA131.RSP file is set to install all the components of Developer Kit. You can modify this response file to select which components you want to install. Be sure to download and extract all of the files you need before you start the installation.

You need to use a text editor that handles lines greater than 255 bytes, such as TEDIT, to prevent truncation of the long lines in this file. Because this file is very large, modifications can be time consuming and error-prone. Make a backup copy of JAVA131.RSP before modifying it to prevent loss of data.

#### 2.5.3 Updating files for Feature Install

The client_name.FIT file for each remote IPL client must be modified to include the following, which must be entered on a single line:

         z:\os2\install\install.inv \\server_name\WRKFILES\client_name
         \os2\install\install.inv

Substitute the name of the remote IPL server and remote IPL client for server_name and client_name. z is the drive where you installed the Developer Kit.

#### 2.5.4 Starting the remote initial IPL installation

Remote initial program load (RIPL) installations are handled by CLIFI (the Feature Install installation program) and can take 15 to 20 minutes or more. After logging onto the remote IPL server as an administrator, run the CLIFI command using the response file created for the remote IPL server FILES.RSP:

         clifi /a:i  /r:c:\javacode\files.rsp

It is necessary to restart the remote IPL Server after running CLIFI if file transfer has not been suppressed.

Run the CLIFI command on each remote IPL client after you run the GENFIRPL command for that client.

         clifi /a:i  /r:z:\xx\JAVA131.rsp

Use the following variable list as a reference in setting the variables in the files mentioned previously:

where:

/r | Specifies the fully qualified name of the remote IPL client's response file, as specified on the GENFICMD command.
xx | Specifies the preferred language variable.

#### 2.5.5 Running the Java Samples from a Remote IPL Client

The remote IPL server administrator must add the following lines to the RPL\FITS\client_name.FIT file to give the remote IPL client the ability to run the samples provided in the Samples component:

         z:\JAVA131\WEBLOGS \\server_name\WRKFILES\client_name\JAVA131\WEBLOGS
         z:\JAVA131\HOTJAVA \\server_name\WRKFILES\client_name\JAVA131\HOTJAVA

Substitute the names of the remote IPL server and the remote IPL client for server_name and client_name. z is the drive where you installed the Developer Kit.

The remote IPL clients can compile the sample code if the samples are placed in a directory to which the remote IPL client has write access.

##### 2.5.5.1 Issuing a trust on a remote IPL client

If you are issuing a trust to connect to a Web server, the IDENTITYDB.OBJ file needs to have read and write permission. Add the following to the FIT file to make the connection:

         z:\JAVA131\WEBLOGS \\server_name\WRKFILES\client_name\JAVA131\WEBLOGS
         z:\JAVA131\HOTJAVA \\server_name\WRKFILES\client_name\JAVA131\HOTJAVA
         z:\JAVA131\IDENTITYDB.OBJ  \\server\WRKF\client\JAVA131\IDENTITYDB.OBJ

Substitute the names of the remote IPL server and the remote IPL client for server_name and client_name. z is the drive where you installed the Developer Kit.

This can also be entered in the default FIT file as part of the installation of the Developer Kit for WorkSpace On-Demand when running the WSOD.CMD command.

## 3.0 AFTER YOU INSTALL

The following sections provide additional information that you might need after you install the Developer Kit.

### 3.1 Additional sources of information

The objects in the following list are displayed in the Developer Kit OS/2 folder only if you are running OS/2 Warp Server 4. If you are running OS/2 Warp Server for e-business, you can access the associated documents at the following locations:

- IBM Center for Java Technology:
  http://www.ibm.com/java/jdk/index.html
- Java Documentation:
  http://www.javasoft.com/doc.html
- ICAT Debugger for OS/2 Java:
  `x:\JAVA131\ICATJAVA\help\icatjvo.htm`
- Developer Kit README
  `x:\JAVA131\`

x is the drive where you installed the Developer Kit.

If you installed the Toolkit or ICAT Debugger for OS/2 Java components in different directories from the Runtime Environment component, specify the appropriate directory for these two objects. The links to the Runtime Environment documentation and the ICAT Debugger for OS/2 Java do not work if the components are in different directories or are not installed.

### 3.2 Installing additional components

After the initial installation of the Developer Kit, you can install additional components by re-running the installation procedure. This requires that you either download the files from the Software Choice Web site again, keep all of the extracted files on your system, or keep the original ZIP files and extract the files again when needed.

### 3.3 AWT TextField and TextArea considerations

The Abstract Window Toolkit (AWT) TextField and TextArea controls do not support characters outside of the current code page. Users running on U.S. English systems can switch to code page 850 (the multilingual code page, which supports the Western European languages) to see additional language characters in these controls.

### 3.4 Modifying font properties files is not supported

Modifying the font properties files provided with the Developer Kit is not supported.

### 3.5 Time problems in Java applets

If you have problems with time in your Java applets, you might need to set or change the time zone (TZ) variable. To set the TZ variable, do one of the following:

- Go to the General page in the TCP/IP Configuration notebook. Set the time zone field, using the online help provided.
- Edit the CONFIG.SYS file and add or change the SET TZ= statement.

### 3.6 Using the OS/2 High Memory Support to increase the Java heap size

In a standard OS/2 environment, the maximum virtual address space available to an application is 512MB and the memory available for the Java heap size is limited to approximately 256MB. This restriction can be modified by using OS/2 High Memory Support (OS/2 HMS). OS/2 HMS increases the maximum virtual address space available to an application to 3GB.

The following platforms support OS/2 HMS:

- WorkSpace On-Demand Servers
- OS/2 Warp Server for e-business

#### 3.6.1 Enabling OS/2 HMS

The available High Memory is controlled by the VIRTUALADDRESSLIMIT setting in the CONFIG.SYS file. The value is specified in MBs in the CONFIG.SYS file. For example:

            VIRTUALADDRESSLIMIT=2048

The smallest value allowed is 512MB. This provides compatibility with previous versions of OS/2 that allowed access to 512MB. Values in excess of 512MB can reduce the number of processes that can concurrently run on a system.

#### 3.6.2 Enabling Java Heap Size to use OS/2 HMS

To indicate to the Java Virtual Machine (JVM) that it should attempt to place its heap into OS/2 HMS, set the following environment variable:

        SET JAVA_HIGH_MEMORY=1

If OS/2 HMS is not available, this option is ignored and the heap is allocated from the standard address space.

#### 3.6.3 Limitations when using OS/2 HMS

If the Java heap is placed in OS/2 HMS, the objects allocated from it are not accessible to 16-bit code. This is only a problem if a Java application has native method DLLs that are either compiled with a 16-bit compiler or call other DLLs that contain 16-bit code.

### 3.7 Enhanced BigDecimal Class

This release includes the BigDecimal class (com.ibm.math.BigDecimal). It is provided (with its supporting class MathContext) as an alternative to the java.math.BigDecimal class. If you are using the java.math.BigDecimal class in a Java program and you want to access the new class, you must change the import statement in your source code as shown below.

Change:

         import java.math.*;

To:

         import com.ibm.math*;

You do not need to change any other code.

### 3.8 The Java Plug-ins

The following sections give information on installing and using the Java Plug-ins for Netscape 4.x and IBM Web Browser for OS/2.

#### 3.8.1 Installing the Java Plug-in after installing Netscape Communicator

If you installed Netscape Communicator after the Developer Kit and want to enable the Java Plug-in, complete the following steps:

1. Locate the plugin.exe file found in the Runtime Environment's \JAVA131\ns\ directory. Copy the plugin.exe file to a temporary directory.
2. Execute the plugin.exe file, from within the directory where you copied the plugin.exe file, by typing the file name at a command prompt. Executing the file extracts the following files:
   - instplug.cmd: CLIFI command used to run the installation of the Java Plug-in
   - npjava.dll: Java Plug-in dll
   - nscheck2.exe: User exit used to locate Netscape
   - nsfiles.rsp: Feature Install (FI) response file. Do not edit this file.
   - nsuser.rsp: Sample partial user response file
   - package.ctl: A packaging file required by FI.
3. Return to the \JAVA131\ns\ directory.
4. Edit the instplug.cmd file to point to the correct paths and boot drive.
5. Edit the nsuser.rsp file to enable the Java Plug-in. The latest version of Netscape Communicator is enabled. (If you want to enable a specific version of Netscape, set the JAVANSFILES.NSDRV value located in the nsuser.rsp file to the fully qualified drive and directory.)
6. Execute the instplug.cmd file.
7. Restart the system.

Use the following variable list as a reference in setting the variables in the files mentioned previously.

where:

xx | Specifies the preferred language variable.
/r | Specifies the fully qualified location of the Feature Install response file.
/r2 | Specifies the drive, path, and name for the user response file.
/b | Specifies the boot drive.
/s | Specifies the fully qualified location of the extracted Developer Kit files.
/l1 and /l2 | Specifies the fully qualified locations of the optional log files. Refer to these files, in addition to the \os2\install\wpinstal.log file on the boot drive, if problems occur during installation.

#### 3.8.2 Installing the Java Plug-in after installing IBM Web Browser for OS/2

If you installed the IBM Web Browser for OS/2 after the Developer Kit and want to enable the Java Plug-in for this browser, complete the following steps:

1. Locate the mzplugin.exe file found in the Runtime Environment's \JAVA131\ns\ directory. Copy the mzplugin.exe file to a temporary directory.
2. Execute the mzplugin.exe file, from within the directory where you copied the mzplugin.exe file, by typing the file name at a command prompt. Executing the file extracts the following files:

- insmzplg.cmd: CLIFI command used to run the installation of the Java Plug-in
- npoji6.dll: Java Plug-in dll
- mzcheck2.exe: User exit used to locate Netscape
- mzfiles.rsp: Feature Install (FI) response file. Do not edit this file.
- mzuser.rsp: Sample partial user response file
- package.ctl: A packaging file required by FI.

3. Return to the \JAVA131\ns\ directory.
4. Edit the insmzplg.cmd file to point to the correct paths and boot drive.
5. Edit the mzuser.rsp file to enable the Java Plug-in. The latest version of IBM Web Browser for OS/2 is enabled. (If you want to enable a specific version of the IBM Web Browser for OS/2, set the JAVAMZFILES.NSDRV value located in the mzuser.rsp file to the fully qualified drive and directory.)
6. Execute the insmzplg.cmd file.
7. Restart the system.

Use the following variable list as a reference in setting the variables in the files mentioned previously.
where:

xx | Specifies the preferred language variable.
/r | Specifies the fully qualified location of the Feature Install response file.
/r2 | Specifies the drive, path, and name for the user response file.
/b | Specifies the boot drive.
/s | Specifies the fully qualified location of the extracted Developer Kit files.
/l1 and /l2 | Specifies the fully qualified locations of the optional log files. Refer to these files, in addition to the \os2\install\wpinstal.log file on the boot drive, if problems occur during installation.

#### 3.8.3 The Java Plug-in Control Panel

After the Java Plug-in is installed, you can control the behavior of the Java Plugin at runtime. For example, when you run the Java Plug-in, you can control whether to bring up the Java Console on startup of the Java Plug-in.

The Control Panel is a Java application launched by the command file located in the [x:\JAVA131]\jre\bin\jctrlpnl.cmd file. An icon for this command file is located in the [x:\JAVA131] directory where x is the drive where you installed the Developer Kit. By default, JAVA131 is the directory name.

### 3.9 Turning Off the JIT compiler

A Just-in-Time (JIT) compiler is provided with the Developer Kit. The JIT compiler generates machine code for frequently used byte code sequences in a Java application or applet during execution. The JIT is enabled by default. You can disable the JIT to aid in the isolation of a problem with a Java application, an applet, or the compiler itself by passing the following command to the Java runtime interpreter:

    SET JAVA_COMPILER=none

### 3.10 File name changes

There are some short file names based on the 8.3 file name convention required by OS/2 that differ from the long file names required by such platforms as Microsoft(R) Windows(R) or Linux. Below are the known file names that differ:

Long File Name | OS/2 Short File name
cmm.dll | orb.dll
fontmanager.dll | font.dll
ioser12.dll | iosr12.dll
java-rmi.exe | jrmi.exe
| policytool.exe | policy.exe

keytool.exe | keytol.exe
appletviewer.exe | applet.exe
tnameserv.exe | tnames.exe
rmiregistry.exe | rmireg.exe
.keystore | keystore.prp
Known short and long file names that differ based on the 8.3 file naming convention.

### 3.11 Configuring the applet viewer

To set up the applet viewer to connect through a proxy gateway to the Internet:

1. Click the Applet Properties.
2. Click Properties.
3. Type your proxy server and port in the corresponding fields
For example:

         Http proxy server: myproxy.mycompany.com
         Http proxy port:   80

If your Web browser is already configured to connect to the Internet, use the values set up in that configuration. For example, with WebExplorer(R), use the Proxy Gateway values in the Configure Servers page, omitting the leading 'http://' and trailing '/'.
If you do not know your Proxy Gateway, ask your system administrator if you are authorized to use the proxy services.
4. Click Apply to store the changes.
5. Close the applet viewer.

### 3.12 Specifying Java options and system properties

You can specify Java options and system properties by creating an environment variable called IBM_JAVA_OPTIONS and setting it to the values you require. Any Java options or system properties specified must be preceded by a space, except for the first option. For example, you could set IBM_JAVA_OPTIONS as follows:

    IBM_JAVA_OPTIONS=-Dmysysprop1=tcpip -Dmysysprop2=wait

If you specify the same options or properties from the command line (or from a JNI program), then these will take precedence over the options and properties specified by the IBM_JAVA_OPTIONS environment variable. The only exception to this rule is when you specify -Xt, -Xtm, or -Xdebug. All of these imply that no JIT should be used.

Be aware that:

- IBM_JAVA_OPTIONS will have no effect when running with JNI_VERSION_1_1.
- Java options should be specified in their current format, for example, -verbose:gc rather than -verbosegc.

The system property ibm.jvm.bootclasspath allows an additional search path to be defined. The value of this property is inserted between any value defined by -Xbootclasspath/p: and the bootclass path. The bootclass path is either the default, or that defined using the -Xbootclasspath: option. For further information regarding these options, see 3.1 Additional sources of information

### 3.13 RMI Over IIOP

Java Remote Method Invocation (RMI) provides a simple mechanism to do distributed Java programming. RMI over IIOP (RMI-IIOP) extends the base Java RMI to perform communication using the Common Object Request Broker Architecture (CORBA) standard Internet Inter-ORB Protocol (IIOP protocol). This allows direct interaction with any other CORBA Object Request Brokers (ORBs), whether they were implemented in Java or another programming language.

The Developer Kit includes support for applications developed to use RMI over IIOP (RMI-IIOP). This support is part of the standard Runtime Environment installation and requires no special setup or configuration.

#### 3.13.1 The IDL-to-Java Compiler

An IDL-to-Java compiler is included with this release. This tool translates CORBA Interface Definition Language (IDL) to Java. See the IDL-to-Java Compiler User's Guide for further information. This documentation can be found in the following directory:

         [x:\JAVA131]\DOCS\RMI-IIOP\toJavaPortableUG.htm

[x:\JAVA131] is the drive and directory where you installed the Developer Kit. By default, JAVA131 is the name of the directory.

The IDL-to-Java compiler supports the CORBA 2.3 specification. This includes the "valuetype" construct and its mapping from IDL to Java. Details of this support can be found at the following FTP sites:

- ftp://ftp.omg.org/
  From this main page Click on pub --> docs --> formal --> 99-07-53.pdf
  (IDL-to-Java mapping)
- ftp://ftp.omg.org/
  From this main page Click on pub --> docs --> formal --> 98-12-01.pdf
  (CORBA 2.3 Core)

The IDL-to-Java compiler is provided so that you can experiment with the IDL generated by the "rmic -idl" command. This generated IDL and the IDL-to-Java compiler are not required when you use RMI-IIOP in the Java to Java case. The generated IDL is used to allow RMI-IIOP to interoperate with other languages such as C++. For interoperation with C++, an IDL-to-C++ compiler that supports the CORBA 2.3 specification must be used to compile the generated IDL.

##### 3.13.1.1 IDL-to-Java Compiler restrictions

The following considerations apply when using the IDL-to-Java compiler:

- Escaped identifiers in the global scope may not have the same spelling as IDL primitive types, Object, or ValueBase. This is because the symbol table is pre-loaded with these identifiers; allowing them to be redefined would overwrite their original definitions.
- There are no local stubs and no copy semantics when passing values locally.
- The fixed IDL type is not supported.
- The generated stubs do not support serialization. Due to IDL and Java mapping specification 1998-08-22 section 25.3.1.3 failing to specify what is required.
- Constants of type octet cannot be declared.

##### 3.13.1.2 IDL-to-Java compiler known problems

The following are known IDL-to-Java compiler problems:

- The compiler might complete the compilation process without errors but fail to generate output. If this occurs, specify the -emitAll option to force all classes to be generated. When using the -emitAll option, it is recommended that you also use the -pkgPrefix option to add a prefix to any class names that begin with 'java' to avoid naming conflicts with classes in the JVM.
- The compiler does not recognize the deprecated CORBA::Principal type.
- Declaration of a constant and method or attribute having the same name in the same scope does not cause an error. The following IDL might cause an error:

               interface t {
                 const long foo = 1;
                 attribute long foo;
               };

- The following IDL results in an error for "S is an undeclared type" in interface B. It must not.

               interface A { struct S { short s; }; };
               interface B:A { typedef S new_S;
                           exception ex {S f1;}; // Error for "S" here
               };

- If a union defines another union in its default clause, the resulting Java class gets compilation errors. The work around is to define the nested union outside of the containing union.

#### 3.13.2 Additional information

For information on IBM and RMI-IIOP, see the following IBM Web site:
http://www.ibm.com/java/jdk/rmi-iiop/index.html

Other documentation available:

- The Developer Kit README located in the directory where you installed the Developer Kit.
- The RMI-IIOP Programmer's Guide is an introduction to writing RMI-IIOP programs and is found at the following Web site or directory and file:

- http://www.ibm.com/java/jdk/rmi-iiop/docs/win130/rmi_iiop_pg.html
- [x:\JAVA131]\DOCS\RMI-IIOP\rmi_iiop_pg.html

- The IDL-to-Java Compiler User's Guide describes how to use the tool that generates Java code from IDL and is found at the following Web site or directory and file:
  - http://www.ibm.com/java/jdk/rmi-iiop/docs/win130/toJavaPortableUG.htm
  - [x:\JAVA131]\DOCS\RMI-IIOP\toJavaPortableUG.htm
- The samples directory contains:
  - A Hello World example that is interchangeable between the JRMP and IIOP protocols. ([x:/JAVA131]/rmi-iiop/samples/Hello)
  - A Hello World example that interoperates with a standard IDL program. ([x:/JAVA131]/rmi-iiop/samples/idl)

  [x:\JAVA131] is the drive and directory where you installed the Developer Kit. By default, JAVA131 is the name of the directory.

- The Java Language to IDL Mapping document is a detailed technical specification of RMI-IIOP and can be found at the following FTP site:
  ftp://ftp.omg.org/
  From this main page click pub --> docs --> formal --> 99-07-59.pdf
- The Java Application Programming Interface (API) information from Sun Microsystems can be found at the following Web site: http://java.sun.com/products/?frontpage-main

#### 3.13.3 RMI-IIOP Terms

API | Application Programming Interface
CORBA | Common Object Request Broker Architecture
IDL | Interface Definition Language
IIOP | Internet Inter-ORB Protocol
| ORB | Object Request Broker

RMI | Remote Method Invocation

### 3.14 Java Authentication and Authorization Service (JAAS)

The Java 2 platform provides a means to enforce access controls based on where code came from and who signed it. These access controls are needed because of the distributed nature of the Java platform where, for example, a remote applet can be downloaded over a public network and then run locally.

However, the Java 2 platform does not provide a way to enforce similar access controls based on who runs the code. To provide this type of access control, the Java 2 security architecture requires and following:

- Additional support for authentication (determining who is actually running the code)
- Extensions to the existing authorization components to enforce new access controls based on who was authenticated

The Java Authentication and Authorization Service (JAAS) framework provides these enhancements.

For a general overview of JAAS, see the following Web site:

http://java.sun.com

From this main page, click Products & APIs and scroll down to the Optional Packages section. The documents at this Web site contain links to many other Web-based information sources.

#### 3.14.1 Difference between IBM and Sun version of JAAS

The IBM version of JAAS for OS/2 differs from the Sun version of JAAS for Windows in that the com.sun.* packages have been moved to com.ibm.* packages.

#### 3.14.2 Base installation

The following gives information on the location of the JAAS files:

- The jaas.jar and jaas_lm.jar files are in the jre\lib\ext subdirectory of the directory where you installed the Runtime Environment
.
- JAAS includes a simple LoginModule that reflects the current operating system login information to Java programs. To provide that capability, the following files are installed in the subdirectories shown, in the directory where the Runtime Environment is installed:

             JAVA131\jre\bin:
                       jaas.dll
                       jaas_g.dll

- The JAVA131\docs\jaas documentation directory contains JAAS API documentation and a module.html file. In the JAAS documentation directory, locate the JaasDocs.jar file (contains the JAAS API documentation) and unjar it (jar -xvf JaasDocs.jar) on either an HPFS or JFS partition. Locate the index.html file. Through a browser, use the index.html file to access the rest of the API documentation.

Note: The Runtime Environment is installed in the x:\JAVA131 directory. (where x is the drive where you installed the Developer Kit. By default, JAVA131 is the name of the directory.)

### 3.15 JNI programming information

Java objects can be accessed from a C program using the Java Native Interface (JNI), which was new with Java 1.1.1. Using the JNI provides a more stable interface than the previous Native Method Interface (NMI).

JNI applications usually need to interact with the long, float, and double Java types for one or more of the following reasons:

- To receive the variables as native method parameters.
- To inspect or modify the instance or class variables directly.
- To return the variable as the native method return value.
- To pass the variables as parameter data when invoking other Java methods from a native method.

### JNI native types

For each of the Java types, the JNI provides native types that you can use in your JNI application. These types are shown in the following table:

JNI Native Types
Java Type | JNI Native Type | Size in Bytes
--- | --- | ---
long | jlong | 8
double | jdouble | 8
float | jfloat | 4
JNI Native Types

Note: There is no need to use these types if your application does not manipulate the Java types long, double, and float.

Use the JNI native types when defining a native method implementation so that the compiler will match the native method signature with that in the header file generated by using the javah utility.

### Helper functions and macros

The JNI native types jlong, jdouble, and jfloat are incompatible with the respective C and C++ types long, double, and float. If you attempt to cast one to the other, you will get either a compile error or unexpected behavior at runtime. Do not attempt to convert one to the other as the formats of the JNI native types are private to the Developer Kit.

The JNI header file (jni.h) includes another header file that is shipped with the Developer Kit named int64_md.h. This file defines helper functions and macros that you can use to work with the native types.

The functions and macros in int64_md.h (relating to jlong) typically include ll either at the start or the end of the name. The functions relating to jdouble or jfloat typically include dbl, double, flt, or float in the name. There are also some jlong, jdouble, and jfloat constants defined.

The following are macro examples:

- Macro ll_add() adds two jlongs and returns a jlong.
- Macro int2ll() converts an int to a jlong.
- Function ll2str() converts a jlong to an ASCII string representation of the 64-bit value.
- Function flt2dbl() converts a jfloat and returns a jdouble.
- Macro dbl2nat() converts a jdouble to an OS/2 native double
.
- Macro dbl_sqrt() takes the square root of a jdouble and returns a jdouble.
- Functions dbl2str() and flt2str() convert their arguments into an ASCII string representation.

### 3.16 Performance considerations

Users might find that some applications take a longer time to load or start on the OS/2 Warp Development Kit, Java 2 Technology Edition, 1.3.1 version as compared to the 1.3.0 version. In these cases, it might be useful to utilize the JAVA.EXE command line parameter, -Xquickstart.

The OS/2 Java 1.3.1 Just-In-Time compiler performs, by default, additional optimizations which might increase the amount of time it takes for an application to load. The intended benefit of these additional optimizations is to improve the runtime performance of the application. The amount of runtime performance benefit and the amount of load time degradation, will vary by application. Some applications will show little or no change compared to Java 1.3.0. The -Xquickstart parameter specifies use of a simpler set of optimizations which might improve startup times. The performance differences between using -Xquickstart, and not using it, will vary by application.

## 4.0 ADDITIONAL FONT PACKAGE(S)

If you downloaded one or more of the font packages as one file, skip to the Installing additional fonts sections for installation instructions. If you downloaded split files, follow these steps to join the split files into one, installable file. Then, continue to the installation sections.

1. Ensure that all the split files for the desired font are in the same directory.
2. At a command prompt and from within the directory that you downloaded the split files into, use the copy command to join the files. You must include the split file names and the file name for the complete font. For example, if you downloaded three split files, type the following:

         Copy /b ExamFont.txx + ExamFont.txx + ExamFont.txx ExamFont.ttf

where:

ExamFont.txx | is the name of the split file that you downloaded. (xx is the number of the split file that you downloaded.) Be sure to specify the split files in the correct order.
ExamFont.ttf | is the complete name of the font.

### 4.1 Installing additional fonts

See the following sections for installation information using the CID installation method or the Font Palette method.

#### 4.1.1 CID installation method

To install an additional font using a CID installation, follow these steps:

1. Locate the wtfont.exe file located in the x:\JAVA131\fonti directory of the Developer Kit. x is the drive where you installed the Developer Kit.
2. Execute the wtfont.exe file by typing the file name at a command prompt. Executing the file extracts the following files:

- wtfnt.cmd: A command file that executes CLIFI.
- wtfonts.rsp: The Feature Install (FI) response file. Do not edit this file.
- wtfntusr.rsp: A user response file. Edit this to select which fonts you want to install.
- PACKAGE.CTL: A packaging file required by Feature Install.

3. Copy the PACKAGE.CTL file into the directory where you downloaded the additional font packages.
4. Edit the wtfnt.cmd file to point to the correct paths and boot drive. See below for a list of parameters.
5. Edit the wtfntusr.rsp file to select which fonts you want to install.
6. Execute the wtfnt.cmd file
7. Restart the system.

Note: If CLIFI requests you to "insert the media", then you need to either set the /s: parameter correctly in the wtfnt.cmd file or place the PACKAGE.CTL file in the same directory as the font packages that you want to install.

Use the following variable list as a reference in setting the variables in the files mentioned above.

where:

/s: | Specifies the source of the font packages and the PACKAGE.CTL file.
/b: | Specifies the boot drive.
/r2: | Specifies the drive, path, and name for the user response file.
/r: | Specifies the Feature Install file (wtfntusr.rsp).
/l1 and /l2 | Specifies the fully qualified locations of the optional log files. Refer to these files, in addition to the \os2\install\wpinstal.log file on the boot drive, if problems occur during installation.

#### 4.1.2 Font palette method

To install an additional font using the Font Palette, follow these steps:

1. Open the OS/2 System folder.
2. Click System Setup Folder.
3. Click Font Palette.
4. Click the Edit Font button.
5. Click the Add button.
6. Enter the drive and directory where you downloaded the font files.
7. Select the font you want to install and click Add.

## 5.0 DOUBLE-BYTE CHARACTER SET INFORMATION

The following sections describe known double-byte character set (DBCS) considerations.

### 5.1 Installation panel text missing or too long in DBCS countries or regions

When installing the Developer Kit on DBCS versions of OS/2, DBCS characters might not be displayed on the installation panels or the lines could exceed the right border of the display window, even when the window is maximized.

To correct these problems, exit the installation program, open the Netscape Navigator or Netscape Communicator for OS/2 object, and click the Options menu item. Open the General Preferences notebook and select the Fonts tab. Choose the proper encoding for your country or region and then set the proportional and fixed fonts to MINCHO. Click OK to save the changes. When you start the installation of the Developer Kit again, the text should be displayed correctly.

### 5.2 TrueType fonts must be installed on Chinese systems

On Simplified or Traditional Chinese systems, ensure that all available OS/2 TrueType fonts are installed. To install these fonts, do the following:

1. At an OS/2 command prompt and where C: is the boot drive, start the Selective Install program by typing:

            C:\OS2\INSTALL\INSTALL

   A panel titled "System Configuration" is displayed.
2. Continue to the OS/2 Setup and Installation panel by clicking the Next button (for OS/2 Warp 4.0) or the OK button (for OS/2 Warp Server for e-business).
3. On the OS/2 Setup and Installation panel, select the TrueType Fonts check box.
4. Click the More button to the right of this check box.
5. Make sure all font check boxes are selected. Click OK.
6. Insert the operating system CD-ROM (OS/2 Warp Server 4.0 or OS/2 Warp Server for e-business) into the CD drive.
7. Click OK on the Source Directory panel.

The appropriate fonts should be installed. Restart your system when the font installation is completed.

### 5.3 Program temporary fixes and FixPaks for DBCS systems

Some DBCS users might encounter the following behaviors relating to Asian Input Method operation. Many of these items are addressed in the latest releases of the operating system. However, if you are unable to upgrade to a later release, contact your local IBM Service Representative about the availability of any applicable Program Temporary Fixes (PTFs) or FixPaks.

The following table describes behaviors relating to Asian Input Method operation and the DBCS system affected.

Description | DBCS System Affected
--- | ---
When focus is moved to other frame, Trap occurs in IME. | Traditional Chinese
When focus is moved to other frame at displaying lookup window, conversion operation does not work correctly. | Traditional Chinese
When focus is moved to other frame at displaying lookup window, lookup window does not disappear. | Japanese
The correct input mode is not displayed at input mode indicator. | Japanese, Simplified Chinese, Traditional Chinese
A conversion string at active client does not disappear by pressing ESC key. | Traditional Chinese
When user switches to JAVA native IME, a conversion key does not work correctly. | Japanese, Simplified Chinese, Traditional Chinese
System goes down when opening too many IM frames. | Traditional Chinese
Cannot continue the input if switching back to English input mode without selecting any DBCS characters from the lookup window. | Simplified Chinese, Traditional Chinese
A conversion string at the active client does not disappear by pressing Ctrl+Space key. | Simplified Chinese
Pressing the Backspace key when displaying the lookup window causes a trap to occur in IME. | Simplified Chinese
Descriptions of behaviors relating to Asian Input Method operation and the DBCS system affected.

### 5.4 Controlling Arabic number character display

Users in some countries or regions could unexpectedly see Arabic number characters appear. Some country- or region-specific versions of OS/2 map the characters x'00B0' through x'00B9' to the Arabic numbers zero (0) through nine (9). To see the desired characters, change the Bi-directional Attributes in CONFIG.SYS or use the Language page in the Properties notebook (Settings notebook in OS/2 Warp Server for e-business) of the object to obtain the desired effect.

### 5.5 Japanese environment settings on OS/2 Warp 4 Japanese version

Use the following Japanese environment settings for OS/2 Warp 4 Japanese version:

Codepage: | 932
ShiftJIS code: | New JIS

### 5.6 Required fonts on OS/2 Warp Japanese version

To run the Developer Kit, the following fonts are required on your system:

Name | Style
GOTHIC | Normal
GOTHIC | HeiseiKakuGothic-W5-H-90-TT
MINCHO | HeiseiMincho-W3-H-90-TT
Required fonts on OS/2 Warp Japanese version.

You can check them in the Font Palette, which is in the System Setup folder in the OS/2 System folder.

- GOTHIC Normal font is included in GOTHIC system Japanese font.
- GOTHIC HeiseiKakuGothic-W5-H-90-TT is IBM HeiseiKakuGothic TrueType font with New JIS order.
- MINCHO HeiseiMincho-W3-H-90-TT is IBM HeiseiMincho TrueType font with New JIS order.

These fonts can be installed through the Selective Install program object, which is in the Install/Remove folder in the System Setup folder on OS/2 Warp 4 systems and OS/2 Warp Servers for e-business.

### 5.7 Improving font quality on OS/2 Warp Server for e-business

On OS/2 Warp Server for e-business, you can improve the font quality of a small point size font by enabling an association between an outline font and a bitmap font. To enable the association, do the following:

1. Open the OS/2 System folder.
2. Open the System Setup folder.
3. Open the System object.
4. Open the Associate to Bitmap Font page.
5. Check the Enable button.
6. Double-click the system menu icon to close the System object.

If you would like more information on bitmap font association, click the help button located on the Associate to Bitmap Font page.

## 6.0 UNINSTALLING THE DEVELOPER KIT

The following sections give you information on uninstalling the Developer Kit.

If you have installed components of the Developer Kit multiple times without uninstalling those components, references to JAVA131 continue to exist in your CONFIG.SYS file. If you want those references to be removed, delete them from your CONFIG.SYS file.

Note: If you have Netscape Communicator running while uninstalling the Developer Kit, the uninstall will fail. You must shut down Netscape Communicator and then begin the uninstall process.

### 6.1 Desktop Method

To uninstall using the Remove the Developer Kit object, follow these steps:

1. Open the OS/2 System folder.
2. Open the System Setup folder.
3. Open the Uninstall Features folder. If you are uninstalling from OS/2 Warp 4, open the Install/Remove folder and then the Uninstall Features folder.
4. Double-click the Remove the Developer Kit for OS/2 object to start the uninstall program.

If you extracted any additional fonts files or Java Plug-in files like the plugin.exe or mzplugin.exe, and you want to remove them from your system, go to the drive and directory where you installed them and delete them.

### 6.2 OS/2 command prompt method

To start uninstalling, make sure that you are at the root drive where the Runtime Environment is installed. At an OS/2 command prompt, enter:

         JAVA131/UNINSTAL/UNINSTAL

The uninstall program leads you through the uninstallation process. Only files and directories created by the installation process are removed. For instance, the HOTJAVA directory created by running the Applet Viewer is not removed during uninstallation.

If you extracted any additional fonts files or Java Plug-in files like the plugin.exe or mzplugin.exe, and you want to remove them from your system, go to the drive and directory where you installed them and delete them.

### 6.3 Uninstalling the Developer Kit from WorkSpace On-Demand 2.0

Support for uninstalling the Developer Kit requires access to an inventory object (Java 1.3) in the Installed Features directory (\os2\install\installed features). If you install the Developer Kit for both the WorkSpace On-Demand 2.0 Client and the WorkSpace On-Demand 2.0 Server, the Java 1.3 inventory object is damaged or replaced. Therefore, do not use the uninstall program to remove the Developer Kit components from the client space.

Instead, delete the [rpldrive]\ibmlan\rpl\bb20.xx\JAVA131 directory structure and any references made to this directory that were added to the WorkSpace On-Demand client image directories. (Such as the CONFIG.SYS, OS2.INI, and FIT files.)

To remove the Developer Kit from the server, delete the \JAVA131 directory structure. You can delete the directory structure from the Drives folder in the OS/2 System folder.

### 6.4 Performing an unattended uninstallation

To uninstall the Developer Kit, enter the following single-line command at an OS/2 command prompt:

         clifi /a:u /f:"<WP_INSTALLED>" /o:INV_JAVA13 /set:Selection=ALL

### 6.5 Removing the Developer Kit as the default JVM

To remove or replace the Developer Kit as your default Java Virtual Machine (JVM), remove the x:\JAVA131\JRE\BIN; statement from your PATH statement in your CONFIG.SYS file. For the change to take effect, restart the system.

## 7.0 KNOWN LIMITATIONS

- If you install the Developer Kit as the default JVM, there are known applications that will fail. They are:
  - LVMGUI: The graphical user interface for the Logical Volume Manager
  - Certain components of TCP/IP

- The Developer Kit cannot write to or read from a file that is two gigabytes or larger.

- If you download and install the Java Cryptography Extensions (JCE) security extensions, remove the Java Cryptography Archictecture (JCA) jar file (jre/lib/ext/ibmjca.jar) during the installation process. Because JCA functionality is a subset of JCE, the Developer Kit may not function correctly with both installed.

- The Java Database Connectivity-Open Database Connectivity (JDBC-ODBC) bridge is not supported.

- The Java Plug-in does not support printing in this release of the Developer Kit.

- Some applications might be hard coded to look for the Developer Kit executables in the JAVA131\bin directory. These executables are actually located in the x:\JAVA131\jre\bin\ directory. If you encounter such an application, type the following at a command prompt to copy the executables to the JAVA131\bin directory:

           copy x:\JAVA131\jre\bin\*.exe to x:\JAVA131\bin

  where x is the drive where you installed the Developer Kit. By default, JAVA131 is the name of the directory.

  If you apply a service level to the Developer Kit, repeat the above step after the service level is applied.

- When using the IBM Java Plug-in, allow applets to finish loading to avoid browser 'hang'. For example, if you click the Back button and then the Forward button while an applet is loading, the HTML pages may be unable to load.

- Although the IBM Java Plug-in supports the same level of LiveConnect functionality as found in the current Sun version of the Java Plug-in (1.3.0_01), some Live Connect failures have been identified with both plug-ins. When reporting failures related to LiveConnect, please state whether they occur in the Sun version or the IBM version of the plug-in.

- The maximum HPFS disk cache size is two megabytes. This maximum size might limit the performance of the Developer Kit. In many environments, the system performance and application load time can be improved by using a larger cache. Potential alternative OS/2 files systems supporting a larger cache size are:

  - JFS included in IBM's OS/2 Warp Server for e-business
  - HPFS 386 included in IBM's OS/2 Warp Server Advanced
- If you experience repaint problems on a Pentium(R) MMX machine or less, you can work around this problem by setting the environment variable, JAVA_COMPILER=NONE.

## 8.0 NOTICES

(c) Copyright International Business Machines Corporation 1999, 2002. All rights reserved.

U.S. Government Users Restricted Rights -- Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.

Consult your local IBM representative for information on the products and services currently available in your area. Any reference to an IBM product, program, or service is not intended to state or imply that only that IBM product, program, or service may be used. Any functionally equivalent product, program, or service that does not infringe any IBM intellectual property right may be used instead. However, it is the user's responsibility to evaluate and verify the operation of any non-IBM product, program, or service.

IBM may have patents or pending patent applications covering subject matter in this document. The furnishing of this document does not give you any license to these patents. You can send license inquiries, in writing, to:

IBM Director of Licensing
IBM Corporation
North Castle Drive
Armonk, NY 10504-1758
U.S.A.

For license inquiries regarding double-byte (DBCS) information, contact the IBM Intellectual Property Department in your country or send inquiries, in writing, to:

IBM World Trade Asia Corporation Licensing
2-31 Roppongi 3-chome, Minato-ku
Tokyo 106-0032, Japan

The following paragraph does not apply to the United Kingdom or any other country where such provisions are inconsistent with local law:

INTERNATIONAL BUSINESS MACHINES CORPORATION PROVIDES THIS PUBLICATION "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

Some states do not allow disclaimer of express or implied warranties in certain transactions, therefore, this statement may not apply to you.

This information could include technical inaccuracies or typographical errors. Changes are periodically made to the information herein; these changes will be incorporated in new editions of the information. IBM may make improvements and/or changes in the product(s) and/or the program(s) described in this information at any time without notice.

Any references in this information to non-IBM Web sites are provided for convenience only and do not in any manner serve as an endorsement of those Web sites. The materials at those Web sites are not part of the materials for this IBM product and use of those Web sites is at your own risk.

IBM may use or distribute any of the information you supply in any way it believes appropriate without incurring any obligation to you.

Licensees of this program who wish to have information about it for the purpose of enabling (i) the exchange of information between independently created programs and other programs (including this one) and (ii) the mutual use of the information which has been exchanged, should contact:

JTCMAIL@uk.ibm.com
[Hursley Java Technology Center (JTC) contact]

Such information may be available, subject to appropriate terms and conditions, including in some cases, payment of a fee.

The licensed program described in this document and all licensed material available for it are provided by IBM under terms of the IBM Customer Agreement, IBM International Program License Agreement or any equivalent agreement between us.

Any performance data contained herein was determined in a controlled environment. Therefore, the results obtained in other operating environments may vary significantly. Some measurements may have been made on development-level systems and there is no guarantee that these measurements will be the same on generally available systems. Furthermore, some measurement may have been estimated through extrapolation. Actual results may vary. Users of this document should verify the applicable data for their specific environment.

Information concerning non-IBM products was obtained from the suppliers of those products, their published announcements or other publicly available sources. IBM has not tested those products and cannot confirm the accuracy of performance, compatibility or any other claims related to non-IBM products. Questions on the capabilities of non-IBM products should be addressed to the suppliers of those products.

All statements regarding IBM's future direction or intent are subject to change or withdrawal without notice, and represent goals and objectives only.

COPYRIGHT LICENSE:

This information contains sample application programs in source language, which illustrate programming techniques on various operating platforms. You may copy, modify, and distribute these sample programs in any form without payment to IBM, for the purposes of developing, using, marketing or distributing application programs conforming to the application programming interface for the operating platform for which the sample programs are written.

These examples have not been thoroughly tested under all conditions. IBM, therefore, cannot guarantee or imply reliability, serviceability, or function of these programs. You may copy, modify, and distribute these sample programs in any form without payment to IBM for the purposes of developing, using, marketing, or distributing application programs conforming to IBM's application programming interfaces.

This edition applies to version 1.3.1 of the IBM OS/2 Warp Developer Kit, Java(TM) 2 Technology Edition and to all subsequent releases and modifications until otherwise indicated in new editions.

This software is based in part on the work of the Free Type Project. For more information about the Free Type Project, see: http://www.freetype.org

## 9.0 TRADEMARKS

The following terms are trademarks of International Business Machines Corporation in the U.S., or other countries, or both:

IBM
OS/2
OS/2 Warp
NetView
WebExplorer

Java and all Java-based trademarks and logos are trademarks or registered trademarks of Sun Microsystems, Inc. in the United States, other countries, or both.

Microsoft and Windows NT are trademarks of Microsoft Corporation in the United States, other countries or regions, or both.

Intel and Pentium are registered trademarks of Intel Corporation in the United States and other countries.

Other company, product, and service names may be trademarks or service marks of others.

[END-OF-INSTALLATION AND CONFIGURATION GUIDE]