NOVELL TECHNICAL INFORMATION DOCUMENT TITLE: Java 1.3.1 for NetWare TID #: 2963237 README FOR: jvm131SP1.exe SUPERSEDES: b3csp8jvm131.exe NOVELL PRODUCTS and VERSIONS: NetWare 5.1 Java Virtual Machine (JVM) 1.3 ABSTRACT: Novell JVM for NetWare May 2002 release version 1.3.1 ----------------------------------------------------------------- DISCLAIMER THE ORIGIN OF THIS INFORMATION MAY BE INTERNAL OR EXTERNAL TO NOVELL. NOVELL MAKES ALL REASONABLE EFFORTS TO VERIFY THIS INFORMATION. HOWEVER, THE INFORMATION PROVIDED IN THIS DOCUMENT IS FOR YOUR INFORMATION ONLY. NOVELL MAKES NO EXPLICIT OR IMPLIED CLAIMS TO THE VALIDITY OF THIS INFORMATION. ----------------------------------------------------------------- INSTALLATION INSTRUCTIONS: Table of Contents 1.0 Introduction 2.0 Documentation 3.0 System Requirements 4.0 New Feature Support 4.1 XSetup utility for GUI configuration 4.2 New default and alternative XServers 4.3 New configurable desktop menu 4.4 Java GUI Euro Character Support 4.5 JAVA_CODEPAGE environment variable 4.6 Command line Mouseless Mode 4.7 JAVA_CASE_SENSITIVE_CANONICAL_PATH environment variable 5.0 Recommendations 5.1 Video Cards 5.2 Classes and Libraries 6.0 NetWare Dependencies 6.1 Installing the JDK for NetWare 6.2 Instructions for updating JAVA.CFG and AUTOEXEC.NCF 6.3 Product Compatibility Issues 6.3.1 Server Version 6.3.2 Graphical Display 6.3.3 ConsoleOne 6.3.4 ZENworks for Desktops 6.3.5 ZENworks for Servers 6.3.6 OnDemand 7.0 Performance Tuning 8.0 Using Java Native Interface (JNI) 9.0 Support 10.0 Updates to Novell JVM for NetWare 11.0 Disclaimer and Copyright 11.1 Novell Disclaimer 11.2 Javasoft Disclaimer 12.0 Trademarks 1.0 Introduction This version of the Novell JVM for NetWare supports version 1.3.1 of the JDK. Pure Java applications and applets developed on other platforms should run unmodified on the Novell JVM. If any application or applet does not run, it is a bug that should be reported. Because Novell is committed to providing the best Java server platform, the GUI on NetWare is intended to provide full support of Java Abstract Windowing Toolkit (AWT) and Java Foundation Classes (JFC) libraries. However, it is Novell's expectation that server-side applications that utilize AWT and JFC will primarily be performing installation, management, and administrative functions. The Server GUI is therefore designed intentionally for a limited number of simultaneous applications. The GUI on NetWare will continue to be fully compliant with the compatibility testing requirements that Sun Microsystems, the owner of Java, establishes in order to remain eligible to receive the Java Compatible designation. Recommendations for tools, third-party class libraries, and hardware follow later in this document. For updated information about Novell's Java products, visit the Novell Java home page at: http://developer.novell.com/ndk/jvm131.htm or http://download.novell.com/ 2.0 Documentation We have enabled Start menu documentation entries. After you install the documentation, use the "NDK Documents" entry on your Start menu to quickly locate and access NDK documentation. The document in this download was created as a stand alone file; therefore links to files in other downloads will not resolve. The download includes a single file: jvm_enu.pdf in the [install] location\novell\ndk\doc\jvm\jvm_enu directory. The default install location is c:\. To read or print the documentation, you need Adobe Acrobat Reader. This is a free download file from http://www.adobe.com. 3.0 System Requirements - The JVM requires NetWare 6 or 5.1 with support pack 2a or higher. - USB mouse/keyboard requires NetWare 6 with support pack 1. - Memory requirements are dependent on the size and requirements of the Java applications being executed. However, you should have at least 32 MB available for text-based applications and 64 MB for AWT-based (graphics) applications. - Mouse support includes both PS/2 and serial (COM1 or COM2). NetWare 6 supports a USB mouse. - Video card that supports 256 colors. (See section 5.1.) The video card also supports VESA 1.2 or higher. VESA 2.0 is preferred. 4.0 New Feature Support 4.1 XSetup Utility for GUI Configuration An XSetup utility is provided for configuring the GUI environment. It is used to configure super VGA and accelerated-X servers on NetWare. It allows you to select the video board, keyboard, mouse, and monitor for these video controllers from a set of predefined hardware devices that are supported by the XSetup utility. 4.2 Default and alternative XServers XFree86 SVGA is the default XServer, and Xi Graphics Accelerated-X XServer is available as an alternative. XFree86 supports VESA 1.2 through 3.0. JVM GUI supports VESA compliant video controllers. Accelerated-X supports over 540 specific video cards; however the accelerated video controllers are limited to 256 colors. 4.3 New configurable desktop menu A configurable desktop menu is provided with options for adding, modifying and removing menu items. You can also install a program into the menu, and set taskbar properties. 4.4 Java GUI Euro Character Support To insert the euro character in a Java GUI screen, press the Ctrl+Alt+E keys together. For keyboards with an Alt+Gr key, you can also insert the euro character by pressing the "Alt Gr" and "e" keys together. To display the euro character in a Java GUI screen, use the 0x20AC (Hex) Unicode character. Note: The euro character is only available in the Java GUI, this will not print to the server console. 4.5 JAVA_CODEPAGE environment variable The default code page used on an English NetWare server has traditionally been 437. This default will remain the same; however, if your instantiation of the JVM needs to use a different code page, you can change it via the JAVA_CODEPAGE environment variable. Examples of Usage: envset JAVA_CODEPAGE=Cp1252 envset JAVA_CODEPAGE=Cp437 envset JAVA_CODEPAGE=ISO8859_1 or java -envJAVA_CODEPAGE=Cp1252 YourClassName java -envJAVA_CODEPAGE=ISO8859_1 YourClassName or even java -Dfile.encoding=ISO8859_1 YourClassName java -Dfile.encoding=Cp1252 YourClassName These are only examples and do not represent all the code pages that are supported. To view other possible values, point your browser to: http://java.sun.com/j2se/1.3/docs/guide/intl/encoding.doc.html 4.6 Command line Mouseless Mode Mouseless mode can be enabled/disabled from the server console command line. To enable, enter: xidev mouseless on To disable, enter: xidev mouseless off 4.7 JAVA_CASE_SENSITIVE_CANONICAL_PATH environment variable By default, when the JVM creates a canonical path, the path might not conform to the same case as the underlying file system entry for the path if an entry exists. If your application needs canonical paths to be the exact case as in the underlying file system, you must define the JAVA_CASE_SENSITIVE_CANONICAL_PATH environment variable. It can be set to any value. Examples of usage: Environment variable not present. Leaves off functionality. envset JAVA_CASE_SENSITIVE_CANONICAL_PATH= Turns of the functionality if it was set. envset JAVA_CASE_SENSITIVE_CANONICAL_PATH=ON Turns on the functionality. envset JAVA_CASE_SENSITIVE_CANONICAL_PATH=(any value) Turns on the functionality. Even giving the variable to "OFF" will turn the functionality on. java -envJAVA_CASE_SENSITIVE_CANONICAL_PATH=ON YourClassName Turns on the functionality only for the specified application. 5.0 Recommendations 5.1 Video Cards If you are purchasing a new video card, VESA 2.0 or higher support with linear frame buffer access is preferred. Some early cards may not be VESA 2.0 compatible, so ensure the documentation indicates if your card is compliant. The PCI and AGP bus types are the preferred types because they are the fastest. The NetWare GUI performs at the same speed with PCI and AGP. The cards must also support 256 colors. (JVM 1.3.1 does not support 16 colors.) 5.2 Classes and Libraries When writing Java applications to run on NetWare, we recommend using the Java Foundation class (JFC) libraries from Sun Microsystems. 6.0 NetWare Dependencies NetWare 6 or 5.1 with support pack 2a or higher. USB mouse/keyboard requires NetWare 6 with support pack 1. You can download the current Support Packs from http://support.novell.com/misc/patlst.htm#nw 6.1 Installing the JDK for NetWare To install the JDK updates for NetWare 5.1 or 6, complete the following: 1) Unload Novell JVM for NetWare (if loaded). 2) Map a drive or attach to the server where you want to install the JDK files. (You must have administrator rights to the server.) 3) Run jvm131.exe on your workstation. 4) Follow the rest of the InstallShield instructions to complete the install. 5) Reboot your server. NOTE: If any problems occur with the GUI after you upgrade to JVM 1.3.1, unload Java and Run VESA_RSP at the server console. This resets the GUI to the default settings. 6.2 Instructions for updating JAVA.CFG and AUTOEXEC.NCF If for some reason these files did not automatically update during install, these instructions describe how to update the files manually. To update the SYS:\ETC\java.cfg file manually you will need to do 2 things. First, make sure the following lines exist in the file: JAVA_HOME=SYS:\JAVA MGMT_HOME=SYS:\PUBLIC\MGMT JAVA_FONTS=sys:\java\lib\fonts JAVA_COMPILER=SymcJIT Second, replace EVERY instance in the file of "classes.zip" with the following string: rt.jar;sys:\java\bin\i18n.jar To update the SYS:\SYSTEM\autoexec.ncf file add the following lines right after the "mount all" command in the file: SEARCH ADD SYS:\JAVA\BIN SEARCH ADD SYS:\JAVA\NWGFX startx The startx line is optional, (it causes the java GUI to begin running at server startup) and you might want to delete any other instances of these lines wherever they exist in autoexec.ncf. 6.3 Product Compatibility Issues There are some issues you should be aware of when installing this version of the Novell JVM: 6.3.1 Server Version Minimum Server Version must be Netware 6, or NetWare 5.1 with Support Pack 2a or higher. applied. 6.3.2 Graphical Display Graphical display on NetWare 5.1, there is a TID that documents a minor problem when JVM 1.3.1 is added to a server. The product list dialog displayed in the GUI may contain rectangular boxes where white space should be. The following patch, NIS_patch.zip, will correct this problem. To use this patch, unzip the patch at the root of the SYS volume of a server that has the NetWare JVM 1.3.1 installation. This patch can be downloaded from the following URL: http://support.novell.com/servlet/filedownload/nsd/n51_nis1.exe 6.3.3 ConsoleOne You must install version 1.2d or later of ConsoleOne to allow for administration of NDS. ConsoleOne 1.2d is available for download from Novell at the following URL: "http://webapps.novell.com/cgi-bin/custom/corp/esd /vrtlbox.pl?NOVELL_PID=87000566.01d&TEMPLATE=2000s_en&TEXT=0" 6.3.4 ZENworks for Desktops ZENworks for Desktops version 3.0 requires the installation of Support Pack 1 for ZENworks-3, when using JVM 1.3.1. The support pack is available from Novell at the following URL: http://support.novell.com/cgi-bin/search/tidfinder.cgi?2958187 6.3.5 ZENworks for Servers Tiered Electronic Distribution uses security certificates to allow subscribers to verify that the distribution they are receiving is from a trusted source. This feature will not work in a mixed JVM 1.1.7b and JVM 1.3.1 environment, i.e. you have some TED components running on servers with JVM 1.1.7b and other TED components running on servers with JVM 1.3.1. If you choose to run TED in this environment it will be necessary to turn off the use of the Security Certificate. Please reference TID #10060307 for details. 6.3.6 OnDemand If using OnDemand v1.5 with JVM 1.3.1, edit the file sys:\system\usageserver.ncf and change the following line java -ns -classpath $USAGECLASSPATH UsageServer to read java -ns -Xbootclasspath $USAGECLASSPATH UsageServer 7.0 Performance Tuning If you have a Java-based server program on the NetWare server that handles a large amount of traffic, you might need to increase the maximum number of packet receive buffers on the server. This prevents packets from getting dropped. Dropped packets slow performance because client programs have to time out and retransmit. To increase packet receive buffers, you can issue a NetWare console command such as: set maximum packet receive buffers = 1000 You can add this command to autoexec.ncf so it is always set when the server comes up. The default native (C) stack size for Java threads on NetWare is 128 KB. For applications that create many threads and do not require such a large stack size, the -ss Java command parameter can be used to specify the stack size. (See JavaSoft's documentation for the Java Interpreter for an explanation of the Java command options.) To specify the amount of virtual memory available to Java applications for non-heap allocations, use the -vm Java command option. The default is 64 MB. The -vm Java command option is unique to NetWare and is not supported by JavaSoft. The syntax for this option is as follows: java -vm MyClass 8.0 Using Java Native Interface (JNI) The java\bin directory includes a file named jni.tar. When extracted, this file demonstrates simple native method examples for Java 1.1. This package is intended as an example of how to write native methods for the Java 1.3.1 Virtual Machine on NetWare, and is not intended as a comprehensive tutorial on writing native methods. 9.0 Support Support for the JVM is provided by Novell Developer Services through the following newsgroup: news://devforums.novell.com/novell.devsup.ndk_feedback 10.0 Updates to Novell JVM for NetWare The latest "JVM 1.3.1 for NetWare" may be downloaded from Novell's web site: http://www.novell.com/download/index.html 11.0 Disclaimer and Copyright 11.1 Novell Disclaimer Novell, Inc., makes no representations or warranties with respect to any software, and specifically disclaims any express or implied warranties of merchantability, title, or fitness for a particular purpose. Distribution of any Novell software is forbidden without the express written consent of Novell, Inc. Further, Novell reserves the right to discontinue distribution of any Novell software. Novell is not responsible for lost profits or revenue, loss of use of the software, loss of data, costs of recreating lost data, the cost of any substitute equipment or program, or claims by any party other than you. We strongly recommend you make a backup before you install software. Technical support for this software may be provided at the discretion of Novell. Copyright (C) 1999-2002 Novell, Inc. All rights reserved. 11.2 Javasoft Disclaimer The Technology is not fault tolerant and is not designed, manufactured or intended for use or sale as online control equipment in hazardous environments requiring failsafe performance, such as in the operation of nuclear facilities, aircraft navigation or communication systems, air traffic control, direct life support machines, or weapons systems, in which the failure of the Technology or Product(s) could lead directly to death, personal injury, or severe physical or environmental damage. 12.0 Trademarks Novell and NetWare are registered trademarks of Novell, Inc. in the United States and other countries, and NLM is a trademark of Novell, Inc. PS/2 is a registered trademark of International Business Machines Corporation. Intel and Pentium are registered trademarks of Intel Corporation. Matrox Mystique is a trademark of Matrox Electronic Systems, Ltd. InstallShield is a registered trademark of Stirling Technologies. Java and JDK are trademarks or registered trademarks of Sun Microsystems in the United States and other countries, and Javasoft and Solaris are registered trademarks of Sun Microsystems. Symantec is a registered trademark and Visual Cafe for Java is a trademark of Symantec Corporation. ISSUE: N/A Self-Extracting File Name: jvm131SP1.exe Files Included Size Date Time ..\ JVM131SP1.TXT (This file) ..\JVM131SP1\ JVM131.EXE 49021531 7-8-2002 4:35:20 pm JVM131.TXT 19281 6-5-2002 3:10:56 am ----------------------------------------------------------------- Any trademarks referenced in this document are the property of their respective owners. Consult your product manuals for complete trademark information. -----------------------------------------------------------------