HP-UX Java™ JDK, JRE, and Plug-In Version 5.0 Release Notes


» Back to HP-UX Java™ JDK, JRE, and Plug-In 5.0.x Release Notes

JDK, JRE, and Plug-In version 5.0 release notes for the Java™ 2 platform, standard edition
(J2SE)™, for HP-UX PA-RISC and HP Integrity Sytems

Contents

» Overview
» Features
  » HotSpot 5.0 JVM

» Installation
  » Patches
  » HP-UX system requirements
  » Web browser requirements
  » Installation instructions
  » File structure JDK/JRE
  » File structure Runtime Plugin

» Usage documentation

  » JDK/JRE Usage
  » Removing support for unwanted architectures in the JRE
  » Support for dynamic thread local storage (TLS)
  » HotSpot JVM Options
  » Signal Chaining Functionality
  » Using WDB to examine backtraces in Java thread stacks
  » Garbage collectors: Parallel, Concurrent mark, and Sweep
  » Allocating physical memory and swap in the Java heap
  » Asian TrueType fonts and Asian locales
  » Date/Time methods defaults
  » Profiling
  » Closing a socket (PA-RISC only)
  » Compatibility with previous releases

  » Configuring the Runtime Plug-In

  » Java Webstart Technology Usage
  » Upgrading from a previous version
  » Additional Java Web Start documentation

  » Additional HP and Sun documentation

» Problem fixes and Known issues
  » Limitation when using jconsole (11i HP Integrity and HP9000 PA-RISC)
  » SecureRandom engine implementation (11i HP Integrity and HP9000 PA-RISC)
  » Supplementary Characters display as empty boxes (11i HP Integrity and HP9000 PA-RISC)
  » Initializing a JVM instance with JNI_CreateJavaVM on HP Integrity
  » Using compiler safe points (HP-UX 11.11 (11i v1) PA-RISC)
  » shl_load HotSpot libjvm problem due to TLS (HP-UX PA-RISC only)
  » Using Linker option +noenvvar and +compat on HP Integrity and PA-64 Systems
  » Running Java with setuid or setgid on HP Integrity and PA-RISC
  » Running Aries HP Integrity (Itanium) emulation on PA2.0
  » Java WebStart

Overview

The Java 2 Platform Standard Edition Version 5.0 for HP-UX provides the tools for developing and deploying Java applications on HP-UX 11i HP Integrity and HP 9000 PA-RISC systems. Please see "HP-UX system requirements" for HP-UX releases that are not supported.

These Release Notes are provided in the software and as a standalone file on the website at Java™ Technology Software on HP-UX. The web version will have the most up-to-date information, especially regarding known defects. Please note that the Runtime Plug-in and Java Web Start release notes are now included with these JDK/JRE release notes.

There are two principal products in the Java 2 Platform Standard Edition family. For 5.0, Sun Microsystems' has reverted to the terminology JDK and JRE.

  • J2SE Runtime Environment (JRE)
    The JRE provides the libraries, HotSpot Java virtual machine, and other components necessary for you to execute a Java application. You may include the runtime environment with your Java applications as long as you adhere to the HP software license agreement and supplemental restrictions provided in the LICENSE file. You must include all of the runtime environment files provided by HP. The JRE is provided as a separate product. In addition, it is included in the JDK download package. The Runtime Plug-In, as well as Java WebStart technology, is now being packaged with the JRE.
  • J2SE Development Kit (JDK)
    The JDK is a superset of the JRE, and includes additional tools such as compilers and debuggers that are necessary for developing applets and applications. The JDK download package includes the JRE.

Features

Version 5.0 of the Java 2 Standard Edition is a major feature release. It includes many new features, enhancements, and updates, yet preserves backward compatibility.

Here is a brief list of some of the new features in 5.0:

  • New language updates: Metadata, Generics, Enumerated types, Autoboxing of primitive types

  • New JVM Monitoring and Management API

  • Improved out-of-box performance

  • New (but compatible) default Java look and feel

For a complete list of features introduced in 5.0 since the previous major release (1.4), go to Summary of New Features and Enhancements. In addition to new features, HP's JDK/JRE 5.0 includes the following:

  • Sun Microsystems' 5.0 release.
    Please note that on occasion HP backports a defect fix from a Sun release that has not yet been merged into our current sources. Therefore a Sun defect may be fixed in an HP release even though the Sun release that contains the fix is not part of the HP release.

  • HotSpot 5.0 server JVM

  • Runtime Plug-in for the Mozilla browser

  • Performance enhancements and defects fixed in 1.4. releases and 5.0 beta

  • 32-bit or 64-bit mode on PA-RISC 9000 and HP Integrity systems

  • Java WebStart technology

HotSpot 5.0 Server JVM

All -X options supported in earlier HotSpot JVMs are included in HotSpot 5.0. Performance, tool support, tool enhancements, and features are documented at http://java.sun.com/j2se/1.5.0/docs/index.html.

The HotSpot 5.0 Server JVM for HP-UX 11i for HP Integrity and HP 9000 PA-RISC systems is suitable for both client and server workloads. We invoke the Server VM with configuration options that suit client-side applications.

The SDK 5.0 HotSpot 5.0 Edition supports the APIs core to the Java 2 platform, among them Remote Method Invocation (RMI), nonblocking i/o APIs, the Collections Framework, and IPV6. The Java 2 Platform version 5.0 API Specification is available at http://java.sun.com/j2se/1.5.0/docs/api/

You may also find the following article useful, "J2SE 1.5 in a Nutshell" by Calvin Austin at http://java.sun.com/developer/technicalArticles/releases/j2se15/

Here is a partial list of the functionality that the HotSpot 5.0 Server JVM provides:

  • Improved performance

  • Java Platform Debugger Architecture (JPDA) Architecture
    The JPDA for HP-UX is similar to the Solaris implementation.
    (excerpts from Sun Microsystems' documentation)
    JPDA is a multi-tiered debugging architecture that allows tools developers to easily create debugger applications which run portably across platforms, virtual machine (VM) implementations and SDK versions. The JPDA consists of three layers:

    • JVMTI - Java VM Tool Interface:
      A new interface in J2SE 1.5 that replaces JVMDI. It defines the debugging services a VM provides.

    • JDWP - Java Debug Wire Protocol
      Defines the communication between debuggee and debugger processes.

    • JDI - Java Debug Interface
      Defines a high-level Java language interface which tool developers can easily use to write remote debugger applications.

    For usage information, refer to Sun VM Invocation Options at http://java.sun.com/j2se/1.5.0/docs/guide/jpda/architecture.html

  • Nonblocking I/O APIs
    Introduced in 1.4.1, they are now part of the Java system libraries under the package java.nio. The previous implementation of I/O multiplexing using the class com.hp.io.Poll is still being included for backward compatibility. We encourage you to upgrade and use the features provided through the new java.nio package.

  • IPv6 support on PA-RISC and Itanium
    Please see IPv6 (Internet Protocol version 6) Support in these release notes for usage information.

  • HP debugger WDB support
    Use HP's debugger WDB 3.0.01 or later to examine backtraces containing mixed language frames (Java and C/C++) in Java thread stacks. This simplifies debugging the VM and Java mixed-language applications. For more information, see "Using WDB to Examine Backtraces in Java Thread Stacks" in the programmer's guide at: Debugging

  • -Xeprof option: Generates profile data for HPjmeter.
    For syntax and use, refer to the HP-UX Programmer's Guide for Java 2 at HotSpot Technology Tools and Commands

  • Large heap sizes
    Heaps up to 3.5GB are supported on HP-UX 11.23 (11i v2) (no patches required), and up to 3GB on HP-UX 11.11 PA (11i v1) with the installation of patches. Refer to the sections on expanding memory in the HP-UX Programmer's Guide for Java 2 at: Expanding Memory

  • 64-bit mode
    Supported by using the option -d64. For further information, refer to the HP-UX Programmer's Guide for Java 2 at HotSpot Technology Tools and Commands#-d64

Installation

Patches

*** IMPORTANT NOTE for PA-RISC Customers! ***

The following networking patch must be installed for HP-UX 11.11 (11i v1) PA-RISC. The patch is not required for Itanium, or for other PA-RISC systems.

  • HP-UX 11.11 (11i v1) PA-RISC Required patch PHNE_29887 (or its superseded patch) solves socket problems that may cause hangs.
  • The pthreads patch shown below must be installed for HP-UX 11.11 (11i v1) PA-RISC. The patch is not required for HP Integrity systems.

  • HP-UX 11.11 (11i v1) PA-RISC Required patch PHCO_29960 (or its superseded patch)
  • To determine whether these patches have been installed on your machine, log in as root and check your machine with:

    /usr/sbin/swlist -l product

    The list of required patches changes frequently and may include patches other than those shown above. To ensure that you have installed all of the required and recommended patches needed for Java, please visit our Java Required Patches webpage at Patch Information

    HP-UX System requirements

    HP Integrity servers: All HP Integrity servers running HP-UX 11i v2 (11.23) are supported. Note that HP-UX 11i v.1.5 11.20 and 11iv.1.6 11.22 are not supported on Java 5.0. Refer to the following website for current HP Integrity servers: HP Integrity Servers.

    HP PA-RISC 9000 systems: HP Superdome, rp8420, rp7400, rp4440, and PA-based workstations running HP-UX 11i v1 (11.11) are supported. The minimum system for running Java 5.0 applications is a PA-RISC 2.0 with HP-UX 11.11. Note that Java 5.0 applications are not supported on HP-UX 11.0 or on PA-RISC 1.1 systems.

    Web browser requirements

    The only web browser supported for Java 5.0 Plug-in is Mozilla for HP-UX version 1.6.0.00 or later. Netscape is not supported.

    Installation instructions

    You need approximately 670MB of disk space to download and install the JDK which includes the JRE. The JRE alone, which includes the Runtime Plug-in and Java WebStart technology, needs approximately 640MB.

    Note:   When downloading a .depot file, some browsers don't recognize the .depot format and treat the file as a text file.  If this happens, right-click the Download Directly >> button (on the Software download confirmation window) and select Save Target As....

    To verify that the file downloaded correctly you need to use MD5 Secure Checksum (md5sum).   You can download MD5 Secure Checksum at HP-UX MD5 Secure Checksum if you do not already have this utility.   To verify your download with MD5 Secure Checksum, at the UNIX prompt, execute the command:
    md5sum <filename>
    If the file downloaded correctly, the checksum number for the file you downloaded should match the MD5 Checksum number given for that file.

    Note that beginning with 5.0, HP is providing the Runtime Plug-in as part of the JRE depot. When you install the JRE, the Plug-in is installed automatically.

    The HP-UX JDK. JRE and Plug-in for the Java 2 Platform install under /opt/java1.5. As root user, use the following SD-UX swinstall command to install the software:

    /usr/sbin/swinstall

    This command will lead you through the installation. Change Source Depot Type to "Local Directory" and Source Depot Path to /tmp/<filename>. (If you used a directory other than /tmp in the previous step, replace /tmp with that directory name.) We recommend you select the "Reinstall filesets" and unselect the "Mount filesystems" option from the options menu.

    WARNING: Do not unarchive rt.jar, charsets.jar, jpda.jar, tools.jar, jce.jar, and jsse.jar. These files are needed by the SDK tools and the runtime environment.

    Add the directory /opt/java1.5/bin to your PATH.

    For information on setting important system parameters required for correct execution of Java programs refer to the Programmer's Guide which can be found at Programmer's Guide for Java™ 2.

    Installing into an alternate location

    To install the software into an alternate location, add @/<alternatedirectory> to the end of the swinstall line, and add the alternate directory to your PATH.

    For example:

    /usr/sbin/swinstall -s <download> \* @/<alternatedirectory>

    SD-UX prepends <alternatedirectory> to the default product path. Java will therefore install in /alternatedirectory/opt/java1.5.

    If you want your Java home directory in <alternatedirectory> without the /opt/java1.5 directories, you need to install into a temporary directory, and then move the directories to where you want them.

    For example:

    swinstall -s <download> \* @/<temporarydirectory>
    mv <temporarydirectory>/opt/java*/* <finalalternatedirectory >

    Or you can install and link to the directories.

    For example:

    swinstall -s <download> \* @/<actualdirectory>
    ln -s <finalalternatedirectory> /<actualdirectory>/opt/java*

    You will notice that the two files, <alternatedirectory>/etc and <alternatedirectory>/var are created. These may be purged, because they do not apply to a product installed in an alternate location.

    File structure JDK

    The following diagram below displays an abbreviated form of the file structure:

    
    java1.5
    
         |
    	 
      ___|________________________________________________
      
       |        |        |            |           |             
       
      bin      lib      jre          demo      include 
      
       |        |       javaws files*
       
      java    tools.jar  | 
      
      javac   dt.jar     |
      
      javadoc ir.idl     |
      
      javah   orb.idl    |
      
      javap              | 
      
      jdb                |
      
                      ___|_____________________________
    				  
                         |                             |
    					 
                        bin                           lib
    					
                         |                             |
    					 
    _____________________|__________________________   | 
    
       |      |                  |         |      |    | 
       
                                                       |
    												   
    java PA_RISC2           PA_RISC2.0W  IA64N  IA64W  |  
    
                                                       |
    												   
                                                       |
                 __________________________________________________________________
    			 
                 |      |    |       |                    |           |        | 
    			 
               rt.jar  zi security PA_RISC2          PA_RISC2.0W    IA64N    IA64W 
    		   
            charsets.jar             |____________________|___________|________|___ 
    		
              jce.jar                |                    |           |        |    
    		  
              jsse.jar            server                server      server   server 
    		  
    

    The tools are under opt/java5/bin and the libraries are under opt/java5/lib. The tools.jar file contains the classes for supporting the tools and utilities. The file dt.jar contains the DesignTime archive of BeanInfo files.

    The jre directory includes the Java runtime environment. The file rt.jar contains the runtime classes for the core API. The file charsets.jar contains the internationalization and localization classes and files. The security directory contains security management files.

    The shared libraries used by the HP-UX platform are contained in the following directories:

    PA_RISC2.0 PA-RISC 2.0 32-bit
    PA_RISC2.0W PA-RISC 2.0 64-bit
    IA64N Itanium 2 32-bit
    IA64W Itanium 2 64-bit

    The include directory contains the header files for supporting JNI and JVMDI.

    File structure Runtime Plug-in

    The Runtime Plug-in requires the shared library(ies) loaded by the Mozilla browser, the remaining Runtime Plug-in files, and the JRE to be located in the following fixed relative position:

    /opt/java1.5/jre Runtime plug-in and RTE files
    /opt/java1.5/jre/plugin/PA_RISC2.0/mozilla Runtime Plug-in shared libraries loaded by Mozilla browser
    /opt/java1.5/jre/plugin/IA64N/Mozilla IPF Runtime Plug-in shared libraries loaded by Mozilla browser

    If the JPI is installed in the default location, /opt/java1.5/jre, then the following links are created during install to allow the browser to locate the Runtime Plug-in shared library:

    PA-RISC installation:

    /opt/mozilla/plugins/libjavaplugin_oji.sl -> \ 
        /opt/java1.5/jre/plugin/PA_RISC2.0/mozilla/libjavaplugin_oji.sl 
    

    HP Integrity installation:

    /opt/mozilla/plugins/libjavaplugin_oji.sl -> \ 
        /opt/java1.4/jre/plugin/IA64N/mozilla/libjavaplugin_oji.sl 
    

    If the Runtime Plugin is installed in a non-default location, you or the system administrator needs to create similar links in order to enable Mozilla to find the Runtime Plug-in. Or you may use the environment variable MOZ_PLUGIN_PATH for Mozilla, which is described in the section below regarding configuration.

    Information on Mozilla for HP-UX is at Mozilla Web Browser for HP-UX Downloads and Documentation. Additional Plug-in documentation and FAQs can be found at http://java.sun.com/products/plugin.
     

    Usage documentation

    NOTE: Some of the usage documentation previously included in these release notes has been moved to the Java for HP-UX Programmer's Guide at Programmer's Guide for Java™ 2

    The Java for HP-UX Programmer's Guide at Programmer's Guide for Java™ 2 contains usage documentation for developers. There you will find information on HotSpot options, HP-specific optons and features, suggestions and examples for allocating memory, how to use WDB to examine backtraces in Java threads, code examples for using Java Native Interface, and much more.

    Another change is that beginning with 5.0, we are combing the JDK, JRE, Runtime Plug-in, and Java WebStart technology release notes in this document.

    JDK/JRE Usage

    Removing support for unwanted architectures in the JRE

    Under the JRE license agreement, partners who redistribute the JRE may remove support for unwanted architectures. Functional components may NOT be removed under any circumstances. You may remove support for unwanted architectures as follows:

    The following commands assume that the JRE has been installed in the standard location, i.e. /opt/java1.5/.

    • On PA-RISC, to remove 64-bit support:

    /usr/sbin/swremove Jre15.JRE15-PA20W Jre15.JRE15-PA20W-HS

    • On HP Integrity (Itanium), to remove 64-bit support:

    /usr/sbin/swremove Jre15.JRE15-IPF64 Jre15.JRE15-IPF64-HS

    • On HP Integrity (Itanium), PA filesets are not installed by default, but if for some reason you have installed them, they can be removed with:
      /usr/sbin/swremove Jre15.JRE15-PA20 Jre15.JRE15-PA20-HS \
           Jre15.JRE15-PA20W Jre15.JRE15-PA20W-HS
      

    Support for dynamic thread local storage (TLS)

    Dynamic thread local storage is fully supported on all HP Integrity (Itanium) systems, beginning with SDK Versions 1.4.2.00 and 5.0.

    Dynamic TLS is not available on any HP-UX PA-RISC system. However there is a workaround. Refer to "shl_load HotSpot libjvm problem due to TLS (PA-RISC)" in these release notes for details.

    HotSpot JVM Options

    For all standard and non-standard options, please refer to the Java for HP-UX Programmer's Guide at HotSpot Technology Tools and Commands. In 5.0, Class Data Sharing is not supported.

    Signal Chaining Functionality

    With signal chaining functionality, applications can now use signals that the JVM uses and they will not interfere with the JVM's functionality. For signal chaining, the application must load the library libjsig.sl (PA) or libjsig.so (Itanium) before libc.2.

    On PA-RISC, to obtain this functionality, you need to install the patch shown below and then use LD_PRELOAD. On HP Integrity, no patch and no workaround is needed.

    HP-UX 11.11 PA-RISC systems, install patch PHSS_28436 (or the patch that supersedes it)

    For examples and scenarios of how to use LD_PRELOAD, refer to the Java for HP-UX Programmer's Guide at: Using Signals#chaining

    Using WDB to examine backtraces in Java thread stacks

    You can now use HP's debugger WDB 3.0.01 or later (the GNU Debugger GDB) to examine backtraces containing mixed language frames (Java and C/C++) in Java thread stacks. This will simplify debugging the VM and Java mixed-language applications. Set the environment variable GDB_JAVA_UNWINDLIB to the path name of the Java Unwind Shared Library libjunwind.sl (PA), which is in the SDK.

    The default location of the Java Unwind Library in the SDK is:

    /opt/java1.5/jre/lib/PA_RISC/server/libjunwind.sl
    /opt/java1.5/jre/lib/PA_RISC2.0/server/libjunwind.sl
    /opt/java1.5/jre/lib/PA_RISC2.0W/server/libjunwind.sl
    /opt/java1.5/jre/lib/IA64N/server/libjunwind.so
    /opt/java1.5/jre/lib/IA64W/server/libjunwind.so

    Here are a few examples. In ksh, you would set the environment variable like this:

    For 64-bit PA2.0 machines:

    export export GDB_JAVA_UNWINDLIB=/opt/java1.5/jre/lib/\
    PA_RISC2.0W/server/libjunwind.sl

    For 64-bit Itanium 2 machines:

    export GDB_JAVA_UNWINDLIB=/opt/java1.5/jre/lib/\
    IA64W/server/libjunwind.so

    If you installed the SDK in a location other than the default, you would substitute the non-default location for "/opt/java1.5" in the above commands. Then use WDB as usual to debug your Java applications or core files. See the tutorial slides on Debugging at Performance Tuning, Tutorials, & Training for help on how to use the new Java stack unwind functionality.

    The Java for HP-UX Programmer's Guide at Programmer's Guide for Java™ 2 contains usage documentation for developers. There you will find information on HotSpot options, HP-specific optons and features, suggestions and examples for allocating memory, how to use WDB to examine backtraces in Java threads, code examples for using Java Native Interface, and much more.

    Please refer also to Sun Microsystems' Java HotSpot VM Options at http://java.sun.com/docs/hotspot/VMOptions.html.

    Garbage collectors: Parallel, Concurrent mark, and Sweep

    For a summary of changes in the garbage collector for version 5.0 refer to http://java.sun.com/j2se/1.5.0/docs/guide/vm/gc-ergonomics.html The parallel collector
    (-XX:+UseParallelGC) has been enhanced in 5.0 to monitor and adapt to the memory needs of the application in order to eliminate the need to tune command-line options to achieve the best performance.

    Allocating physical memory and swap in the Java heap

    Since 1.4.1.05, the method of allocating physical memory and swap within the Java heap has changed. As a result, you are likely to see higher RSS (resident set size) memory usage when monitoring your Java processes with Glance or other tools, or your application startup may be slightly slower.

    For more details on why this occurs and for examples of using key command line options, see: Allocating Physical Memory and Swap in the Java Heap.

    Asian TrueType fonts and Asian locales

    Asian Locales are supported by HP's 5.0 JDK with TrueType fonts. For more details, please refer to HP-UX Fonts and the Java™ Runtime Environment.

    Date/Time methods defaults

    The HotSpot JVM uses the gettimeofday() system call to obtain date and time information. For performance reasons a new mechanism that uses the number of CPU ticks since the application started is used to calculate the current time. As a result, changes to the system date or time using date(1), adjtime(2) or time synchronization utilities such as ntp will not be reflected in the date and time that the Java program returns, until the process is restarted.

    If your application requires that system time changes are immediately reflected, you can use the
    -XX:+UseGetTimeOfDay option to tell the JVM to use the gettimeofday call instead of the new, lightweight mechanism. However you may notice a drop in performance.

    Profiling

    Currently a SIGPROF handler to support future profiling capability is installed automatically. This may cause incompatibilities with other native code or profiling tools which use SIGPROF. You can turn off the SIGPROF handler by using the following option -XX:+ReduceSignalUsage

    However be aware that using this option also turns off the SIGQUIT handler, and you therefore will not be able to get a Java stack trace.

    Closing a socket (PA-RISC only)

    Because of changes to the mechanism by which a socket is closed in the VM, you no longer need to use the -XdoCloseWithReadPending option we recommended in earlier releases.

    For further details, refer to the HP-UX Programmer's Guide at HotSpot Technology Tools and Commands#socket

    Compatibility with previous releases

    Sun Microsystems maintains upward compatibility, therefore an application written for a 1.4 JVM will run on a 5.0 JVM. Downward compatibility is generally not supported, because new API's are introduced that cannot be run on earlier JVMs.

    For a detailed description of the incompatibilities between 1.4 and 5.0, refer to http://java.sun.com/j2se/1.5.0/compatibility.html

    Configuring the Runtime Plug-In

    For additional information on the Runtime Plug-In, refer to the Plug-In FAQs at Java™ Runtime Plug-in (JPI) for 1.3, 1.4, 5.0, & 6.0 Frequently Asked Questions.

    The JPI configuration has been redesigned in the 5.0 release. Please refer to Sun Microsystems' documentation at: http://java.sun.com/j2se/1.5.0/docs/guide/deployment/deployment-guide/jcp.html

    CLASSPATH

    A user's CLASSPATH environment variable can be passed by the JVM by running the Control Panel and specifying either '-cp' or '-classpath' in the "Java Run Time Parameter" box. You need to exit and rerun the browser for this change to take effect.

    Java Webstart Technology Usage

    Java™ Web Start is an application-deployment technology, which gives you the power to launch full-featured applications with a single click from a web browser. It is located in the jre directory. Some of Java Web Start's features include:

    • Runs independently of any browser, so you can shut down your browser or go to another Web page and continue using your application.
    • Applications deployed with Java Web Start do not require a browser interface to operate.
    • Includes security features of the Java 2 platform.

    The hardware and operating system requirements for using Java Web Start are the same as those recommended for J2SE platform implementation on which it runs.

    Upgrading from a Previous Version

    Do NOT uninstall your previous version of Java Web Start (if you have one) before installing the new version. Uninstalling the previous version will cause the download cache to be cleared, and all of the previously installed Java Web Start applications will have to be downloaded again.

    This version will overwrite previous installations and automatically update browsers to use this new release. If you want to reactivate a previous version after installing this new release, you have to re-install the old version. The configuration files and program files folder used by Java Web Start have not changed, so all your settings will remain intact after the upgrade.

    Additional Java Web Start documentation

    More information, including developer documentation, can be found in Sun Microsystems' documentation at: http://java.sun.com/products/javawebstart/reference/index.html.

    Additional HP and Sun documentation

    The following websites have additional information:

    » HP-UX Programmer's Guide for Java 2
    » Summary of new features and enhancements in 5.0
    » New Java 5.0 language features
    » Java 2 SDK tools and tool architecture
    » Java 2 platform version 5.0 API specification
    » Java 2 platforms and APIs - Authorized Books
    » Java tutorial and code camps
    » Java security and the Java platform
    » Java technologies
    » Plug-In documentation and FAQs
    » Mozilla Browser for HP-UX
       Java man pages (located at/opt/java1.5/man)

    Problem fixes and known issues

    Problem fixes

    Known JavaSoft bugs are documented in the Bug Database at http://developer.java.sun.com/servlet/SessionServlet?url=/developer/bugParade/index.jshtml
    (login required)

    This version 5.0 release includes enhancements and defects fixed in 1.4 releases and fixes for any defects found during beta. It also includes Sun Microsystems' 1.5.0 FCS release.

    Please note that on occasion HP backports a defect fix from a Sun release that has not yet been merged into our current sources. Therefore a Sun defect may be fixed in an HP release even though the Sun release that contains the fix is not part of the HP release.

    Known issues

    For the most up-to-date information on defects and known issues, please refer to the web version of these release notes at: JDK, JRE, and Plug-In 5.0.x Downloads and Documentation

    Below is some information on known problems for HP-UX 11i Integrity and HP9000 PA-RISC systems. Some of the solutions require installing patches. For more information on locating and installing patches, go to: Patch Information.

    Limitation when using jconsole (11i HP Integrity and HP9000 PA-RISC)

    The jconsole application relies on shared memory for inter-process communication. On HP-UX, jconsole will not work with any 32-bit application that needs all application memory mapped private. On HP Integrity (Itanium), any request of 1700MB or larger causes all memory to be mapped private. On HP PA-RISC, a request larger than 2400MB may cause all memory to be mapped private. If your Java application relies on large private address space, jconsole will not be able to monitor such Java applications.

    SecureRandom engine implementation (11i HP Integrity and HP9000 PA-RISC)

    Beginning with 5.0, Sun Microsystems' SecureRandom engine implementation supports a new algorithm, NativePRNG, in addition to SHA1PRNG. NativePRNG will only be available if /dev/random and /dev/urandom are installed in your system. Because HP-UX does not support seeding entropy generating devices such as /dev/random, applications that rely on this will not be able to use NativePRNG. An attempt to seed the device will cause an exception. This defect is expected to be fixed in a future release.

    Supplementary characters display as empty boxes (11i HP Integrity and HP9000 PA-RISC)

    Supplementary characters are not part of the HP-UX default truetype fonts, therefore they will not be available on HP-UX 11i PA-RISC or HP Integrity. If you try to display supplementary characters in Java 5.0, empty boxes will be displayed. You may use your own fonts to display supplementary characters, but you will need to edit the fontconfig.properties accordingly. For more information on editing font configuration files, refer to http://java.sun.com/j2se/1.5.0/docs/guide/intl/fontconfig.html

    Initializing a JVM instance with JNI_CreateJavaVM or attaching to JVM with AttachCurrentThread() on HP Integrity

    The Java 5.0 stack size required to initialize a JVM instance with JNI_CreateJavaVM or to attach to JVM with AttachCurrentThread() is greater than the HP-UX 11.23 (11i v2) HP Integrity pthread default of 256K. If you wish to call JNI_CreateJavaVM or AttachCurrentThread() from a pthread, you need to create the pthread with a larger stack size, at least 416K. Stack overflow failures during JVM initialization are not always clearly reported as such, since the JVM may not have yet installed its handlers, and the failures may appear as random exceptions. The solution is make sure you have enough stack space.

    Using Compiler safe points (HP-UX 11.11 (11i v1) PA-RISC)
    Using compiler safepoints guarantees a more deterministic delay to stop all running Java threads before doing a safepoint operation, namely garbage collection and deoptimization. To use Compiler Safe Points on HP-UX 11iv.1 (11.11) you must install the patches shown below. Compiler safe points is off by default in Java 5.0. To turn it on, use the following combination of options.
    (Note that this is a change from Java 1.4.)

    -XX:+UseCompilerSafepoints -XX:+ServerApp

    HP-UX 11.11 (11i v1) patch PHKL_24751 and patch PHKL_27317 (or the supersede patches)
    HP-UX 11.11 (11i v1) patch PHKL_27092 (for 64-bit) (or its supersede patch)

    For information on locating and installing the patches, go to:
    Patch Information. If the patches have been superseded, you may install the new patches.

    shl_load HotSpot libjvm problem due to TLS (HP-UX PA-RISC only)
    The libjvm library for the HotSpot 5.0 Server JVM uses thread local storage (TLS). Currently, the dynamic loader used by shl_load does not support dynamically loading a shared library containing TLS when the library was not included in the link line.

    For example, you may need to load a library dynamically that contains TLS (such as libjvm.sl) by using shl_load or dlopen, without having linked your application against it. This might be the case if your application uses plug-ins.

    In all HP-UX 11i releases, the LD_PRELOAD feature is provided and no patches are required for it. For more information on LD_PRELOAD functionality and its limitations, read the man page for dld.sl after you have installed the patch.

    Using Linker option +noenvvar and +compat on HP Integrity and PA-64 Systems
    If your application links with libjvm and uses the JNI interface APIs to load the JVM directly, do not use the linker options +noenvvar or +compat on HP Integrity or PA-64 systems.

    Running Java with setuid or setgid on HP Integrity and PA systems
    Java requires dynamic loading (SHLIB_PATH, LD_LIBRARY_PATH) which are disabled in setuid or setgid executables. Therefore Java cannot run with setuid or setgid.

    Running Aries HP Integrity (Itanium) emulation on PA2.0
    If you are running the Aries Itanium emulator on a PA2.0 system with HP-UX 11.22 or 11.23, a defect exists which causes Java math calculations to produce incorrect math routine results. This problem is fixed by installing the following patches, or the patch that supersedes it:

    HP-UX 11.23 PHSS_30779

    Java WebStart

    Java WebStart does not currently support the automatic downloading of JREs that may be requested by a JNLP file. You will need to install any specific JRE versions required by an application prior to running that application. To download the version you require, go to Java™ Technology Software on HP-UX. Once the new JRE is installed, you will need to add the new JRE to WebStart. For further information on WebStart, refer to Sun Microsystems' website at: http://java.sun.com/products/javawebstart/

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