NOVELL TECHNICAL INFORMATION DOCUMENT TITLE: JVM v1.2.2_006 for NetWare TID #: 2959620 README FOR: jvm122.exe SUPERSEDES: b2cspjvm.exe NOVELL PRODUCTS and VERSIONS: Java Virtual Machine (JVM) 1.1.5 - NW51S ABSTRACT: Components JVM - The Java Virtual Machine (JVM) v1.2.2_006 for NetWare. The Symantec Jit 3.10 for NetWare. GUI Services - Graphical User Interface for Java on NetWare ----------------------------------------------------------------- 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: Novell JVM for NetWare May 2001 release version 1.2.2 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 5.0 Recommendations 5.1 Video Cards 5.2 Classes and Libraries 6.0 NetWare 5.1 Dependencies 6.1 Installing the JDK for NetWare 6.2 Instructions for updating JAVA.CFG and AUTOEXEC.NCF 7.0 Performance Tuning 8.0 Using Java Native Interface (JNI) 9.0 JVM File Descriptions 10.0 Support 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.2.2 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/jvm12.htm 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 a NetWare operating system version 5.1 and Support Pack 2A. - The CPU requirement is at least an Intel Pentium or Pentium Pro with a 100 MHZ processor speed. - 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). Developers need to be aware that the NetWare 5.x install has a minimal JVM file set, which allows the server to install using Java. It does not contain the include directory, which is necessary for JVM development work. Thus, you have to install the NDK version of the JVM, which can be downloaded from Novell at the following URL: http://developer.novell.com/ndk/ 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/products/jdk/1.2/docs/guide/internat/encoding.doc.html 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. Recommended Video Cards are - Matrox Mystique - Matrox Millennium - TI 3d Rage Pro 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 5.1 Dependencies For NetWare 5.1 you need to install Support Pack 2A before installing this version of the Novell JVM for NetWare. 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, 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 jvm.exe on your workstation. 4) Follow the rest of the InstallShield instructions to complete the install. 5) Reboot your server. 6.2 Instructions for updating JAVA.CFG and AUTOEXEC.NCF If for some reason these files did not automatically update during install, these instuctions 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 this 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\BIN\CLASSIC SEARCH ADD SYS:\JAVA\NWGFX startx The startx line is optional, (it causes the java GUI to begin running at server startup) and you may want to delete any other instances of these lines wherever they exist in autoexec.ncf. 6.3 If you update the SP2A JVM to 1.2.2 JVM, ConsoleOne is required for the adminitration of NDS. You can get the newer ConsoleOne from the following location: http://webapps.novell.com/cgi-bin/custom/corp/esd/ vrtlbox.pl?NOVELL_PID=87000566.01d&TEMPLATE=2000s_en&TEXT=0 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 prvents 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 48 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 32 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.2.2 Virtual Machine on NetWare, and is not intended as a comprehensive tutorial on writing native methods. JVM 1.2.2 does not currently support the Invocation API's. JVM might support these in a future release. The following calls are not supported: JNI_GetDefaultJavaVMInitArgs JNI_GetCreatedJavaVMs JNI_CreateJavaVM DestroyJavaVM AttachCurrentThread DetachCurrentThread. 9.0 JVM File Descriptions SYS:\JAVA\LIB rt.jar Standard Java Classes i18n.jar Standard Java Classes SYS:\JAVA\BIN agent_g.nlm Support file for Sun’s JDB cafe_g.nlm Support file for Symantec’s Visual Cafe debugger cmm.nlm Color Management Module dcpr.nlm Support file for Java 2D graphics engine fontmn.nlm Font manager hprof.nlm Java heap profiler jvmlib.nlm JVM Library support module java.nlm Novell JVM for NetWare jdbc.nlm Java Database Connectivity NLM jmc sock.nlm Java Multicast Socket Support jnet.nlm Java.net classes support jpeg.nlm JPEG image support jvmlib.nlm Multimedia support math.nlm Math support math_g.nlm Math support, debug version mmedia.nlm Multimedia support medialib.nlm Multimedia support nawt.nlm Native Java methods symcjit.nlm Symantec JIT zip.nlm Java compression library zip_g.nlm Java compression library, debug version SYS:\JAVA\NWGFX aiops2.nlm Mouse driver for PS/2* mouse conlogj.nlm Native support for GUI application log conlogo.nlm Native support for GUI console application console log def_rsp.ncf Script for setting up GUI to VGA 16 (Default) icelib.nlm Window manager libraries for NetWare GUI 10.0 Support Support for the JVM is provided by Novell Developer Services through the following newsgroup: news://devforums.novell.com/novell.devsup.ndk_feedback 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-2001 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: Important Product Compatibility Information If you plan to install Zenworks for Desktops version 3.0 and Graphical Display on NetWare 5.1, you must complete the following instructions: Zenworks for Desktops version 3.0. This requires the installation of Support Pack-1 for Zenworks-3. This support pack is available at http://support.novell.com/cgi-bin/search/tidfinder.cgi?2958187. Graphical display on NetWare 5.1. The product list dialog displayed in the GUI may contain rectangular boxes where white space should be. The following patch will correct this: NIS_patch.zip. To use this patch, unzip the patch at the root of the SYS:Volume on the server that has the NetWare JVM 1.2.2 installation. This patch is available at http://support.novell.com/servlet/filedownload/nsd/n51_nis1.exe. Self-Extracting File Name: jvm122.exe Files Included Size Date Time ..\ JVM122.TXT (This file) ..\JVM122\ JVM.EXE 36154928 5-31-2001 3:48:08 pm ----------------------------------------------------------------- Any trademarks referenced in this document are the property of their respective owners. Consult your product manuals for complete trademark information. -----------------------------------------------------------------