Overview of the IMS Java dependent regions

The IMS Java™ dependent regions are two types of IMS dependent regions that provide a Java Virtual Machine (JVM) environment for Java applications: Java message processing (JMP) regions and Java batch processing (JBP) regions.

Important: You can host Java applications on the mainframe to access IMS from the following z/OS® environments:
  • JMP and JBP regions
  • WebSphere® Application Server for z/OS
  • Db2 for z/OS stored procedures
  • CICS®
Use the JMP or JBP regions to host your Java application if your application is required to run in an IMS dependent region.

JMP and JBP regions can run applications written in Java, object-oriented COBOL, object-oriented PL/I, or a combination of these languages.

To access IMS message queues from your JMP and JBP applications, use the IMS Java dependent region resource adapter. To access IMS databases from your JMP and JBP applications, you can also use these IMS Universal drivers: the IMS Universal JDBC driver and the IMS Universal DL/I driver.

In addition to IMS databases, you can access Db2 for z/OS databases from your JMP and JBP applications by using the JDBC driver for Db2 for z/OS (JCC driver version 3.57.91).

Start of changeJMP and JBP regions can load and run with a 31-bit or 64-bit Java virtual machine (JVM). Use the JVM=64 or JVM=31 parameter to switch between the 64-bit and 31-bit addressing mode. If no value is specified on JVM=, the 31-bit addressing mode is used.End of change

Java message processing (JMP) regions

JMP regions are like message processing program (MPP) regions, but JMP regions allow the scheduling only of Java programs. In the PSB source associated with the Java program, the option LANG=JAVA must be specified. A JMP application is started when there is a message in the queue for the JMP application and IMS schedules the message to be processed. JMP applications, like MPP applications, are executed through transaction codes submitted by users at terminals and from other applications. Each transaction code represents a transaction that the JMP application processes.

A single application can also be started from multiple transaction codes. JMP applications, like MPP applications, are flexible in how they process transactions and where they send the output. JMP applications send any output messages back to the message queues and process the next message with the same transaction code. The program continues to run until there are no more messages with the same transaction code. JMP applications share the following characteristics:

  • They are small.
  • They can produce output that is needed immediately.
  • They can access IMS or DB2® data in a DB/DC environment and DB2 data in a DCCTL environment.

Java batch processing (JBP) regions

JBP regions run flexible programs that perform batch-type processing online and can access the IMS message queues for output, like non-message-driven batch message processing (BMP) applications. JBP applications are started by submitting a job with JCL or from TSO. JBP applications are like BMP applications, except that they cannot read input messages from the IMS message queue. For example, there is no IN= parameter in the startup procedure. Like BMP applications, JBP applications can use symbolic checkpoint and restart calls to restart the application after an abend. JBP applications can access IMS or Db2 for z/OS data in a DB/DC or DBCTL environment and Db2 for z/OS data in a DCCTL environment