Why does my application sometimes receive a NativeSeqFile error when using JRIO and the Remote Method Invocation (RMI) – Java Remote Method Protocol (JRMP) to access MVS datasets?
RMI-JRMP uses sockets to make the connection between the client and the server java programs. Sockets in RMI-JRMP are given an expiration time (default 15000 milliseconds or 15 seconds). If the socket is not used within this timeframe, the socket is closed. A socket cleanup thread is activated every 15000 milliseconds and is run to clean up any closed sockets and their associated resources. With Java on the OS/390 and z/OS platforms, the socket connection runs in a thread. Additionally, the JRIO code uses the Java Native Interface (JNI) to call native OS/390 ‘C’ runtime library routines to access MVS datasets. Because JRIO uses these ‘C’ runtime library routines, JRIO is dependent on the behavior of these routines and any restrictions associated with them.