NonStop Server for Java Programmer's Reference (NSJ 4.0+)

Floating Point Support
By default, previous versions of NonStop Server for Java converted any floating-point value
that crossed the Java Native Interface (JNI) boundary to a TNS float. This default could be
overridden by supplying a line in the file TandemVMClassFP.properties. If a particular
class needed IEEE floating-point values passed to its JNI code instead of TNS float values;
users added a property (with the name of the class being the name of the property) to this file.
Users also set the value of the property to IEEE_FP to indicate that they wanted IEEE
floating-point values passed to their JNI code or TANDEM_FP to indicate that they wanted
TNS floating-point values passed to their JNI code.
With the current version, NonStop Server for Java 4 does not convert any floating-point values
passed through JNI calls to TNS floating-point values. In addition, a user program cannot
specify the floating-point type by using the TandemVMClassFP.properties file. Thus,
any user-program or Java-based product with JNI code that obtains floating-point values from
Java must call the NSK_FLOAT_ * Guardian routines to convert these values to TNS floats.
Likewise, any float value passed to Java must be an IEEE float value.
Since previous versions of NonStop Server for Java set the linker flag for the process to TNS
float, any use of the C runtime library used routines that handled TNS floats. For NonStop
Server for Java 4, the linker flags described under Linker and Compiler Options are used to
specify IEEE floating point. Accordingly, the C runtime library uses routines that handle IEEE
floating point.
For NonStop Server for Java 4, any C runtime library calls such as sprintf or sscanf,
made from JNI code, assumes IEEE float values and calling conventions. For example, assume
that JNI code, written for a previous version of Java, converts a TNS floating-point value to a
string, which is then passed to Java. To migrate the program, you must change the JNI code to
convert the TNS floating-point value to an IEEE floating-point value and then call sprintf to
convert the floating-point value to a string.
For more information, see IEEE Floating-Point Implementation.
Using AWT Classes
If your Java programs use AWT classes with previous versions of NonStop Server for Java,
change your program code to catch a HeadlessException rather than an
UnsupportedClassException.
Because the NonStop Kernel operating system does not provide support for windowing
operations, previous versions of NonStop Server for Java supported only those Abstract