NonStop Server for Java 6.0 Programmer's Reference

NonStop Server for Java 6.0 supports the Sun Microsystems enhancement to AWT called "headless
support" that allows a JVM to indicate whether a display, keyboard, sound, or mouse operation
can be supported in a graphics environment.
Sun implemented headless support by supplying two new methods in the GraphicsEnvironment
class: is Headless and is HeadlessInstance. In addition, Sun created a new exception
java.awt.HeadlessException. HeadlessException will be thrown by any class or method
that requires a display, keyboard, sound, or mouse operation if such a class or method is invoked
when GraphicsEnvironment.isHeadless returns true. Classes and methods that support
printing, fonts, and imaging are fully supported in a headless JVM and are fully supported by
NonStop Server for Java 4, 5, 5.1, and 6.0.
For further information, see “Headless Support” (page 42) in the HP Implementation specifics
section.
POSIX Threads
NonStop Server for Java 3.1.x and earlier versions used OSS POSIX Threads (product number
T5819) that conformed to an earlier standard (Draft 4) for POSIX threads. NonStop Server for
Java 4, 5, 5.1, and 6.0 use Standard POSIX Threads (product number T1248), which conforms
to IEEE POSIX Standard 1003.lc.
The POSIX threads calls in T1248 have changed to conform to the standard; therefore, any native
code for NonStop Server for Java 3.1.x applications that makes POSIX threads calls might have
to change to use the standard pthread routine. For more information, see Appendix D in the Open
System Services Porting Guide, which contains a list of differences between the POSIX thread
routines in T5819 and the routines in T1248.
Additionally, you must change any JNI code that made calls to routines beginning with cma to
use the Wrapper or Development Toolkit routines (spt.) supplied with T1248.
NOTE: Any user-developed code that makes such POSIX threads calls must change.
Directories of Binary Files Moved
If your NonStop Server for Java programs have references to bin/oss/posix_threads in
Pathway configuration files or elsewhere, you must change them to use the NonStop Server for
Java 6.0 installation bin directory.
In NonStop Server for Java 3.1.x or earlier versions, the bin and jre/bin directories contained
a shell script that ran the real executable that was located in bin/oss/posix_threads. In the
NonStop Server for Java 6.0 version, the bin directory contains the real executable, no shell script
wrapper, and no bin/oss/posix_threads directory. The jre/bin directory contains the
executables in the bin directory.
Character Handling
With NonStop Server for Java 6.0, character handling is based on version 4.0 of the Unicode
standard. This new basis affects the Character and String classes in the java.lang package,
the collation and bidirectional text analysis functionality in the java.text package, character
classes in the java.util.regex package, and many other parts of the Java SE 6.0. Support
for supplementary characters has been specified by the Java Specification Request (JSR) 204 expert
group and implemented throughout the Java SE 6.0. See the article Supplementary Characters in
the Java Platform and the Character class documentation for more information.
BigDecimalFormat Class
In JDK 6.0, the DecimalFormat class was enhanced to format and parse BigDecimal and
BigInteger values without loss of precision. The formatting of these values is enhanced
84 Migrating Applications