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

Additional Files
In addition to the standard Java packages, the NonStop Server for Java 4 provides these files:
jtatmf.jar
File containing classes for the version of the NonStop Java Transaction Agent that uses TMF
javachk
The Java Checker program, which determines whether a problem with the JVM is caused by an incorrect
TCP/IP configuration
BaseLibList
File used to create JavaLibList, which you can use at run time to determine whether an
UnsatisfiedLinkError will be thrown during a call to System.loadLibrary, if the library was
not linked in.
Additional Environment Variable
NonStop Server for Java 4 has an implementation-specific environment variable that you can use to control the
run-time environment. The JAVA_PTHREAD_MAX_TRANSACTIONS environment variable specifies the
maximum number of TMF transactions allowed per process. The default number allowed is 1000. For detailed
information, see Controlling Maximum Concurrent Transactions.
Java Native Interface (JNI)
The Sun Microsystems Java Native Interface (JNI) standard defines both the C-language APIs that enable Java
methods to call C and C++ methods and the way that C and C++ methods can start and interact with a Java virtual
machine (JVM). The NonStop Server for Java 4 supports JNI and the Invocation API with the following
modifications:
You must relink the java executable whenever you use new C or C++ routines in your Java programs.
Multithreaded native C or C++ routines must use the same Pthread library and wrappers that the JVM
uses, but HP recommends that any multithreaded code be written in Java.
If native C or C++ routines must invoke Transaction Management Facility (TMF) calls, you must use TMF
transaction jacket routines as described in the Open System Services Programmer's Guide in the
"Application Programming With Standard POSIX Threads" section under the topic "TMF Transaction
Jacket Routines." The calls are:
SPT_ABORTTRANSACTION()
SPT_BEGINTRANSACTION()
SPT_ENDTRANSACTION()
SPT_RESUMETRANSACTION()
Note: The Open System Services Programmer's Guide says that the maximum concurrent
transactions allowed in a process is 100; however, the JVM is an exception where the
maximum allowed is 1000 as described under Controlling Maximum Concurrent
Transactions.
When calling a C or C++ routine, where the function passes or returns parameters of type float or