iSeries® objects

EGL provides a library and Record definitions to communicate with data queues and data areas on the iSeries®.

The iSeries® operating system has its own API to handle program-to-program communication. The communication can take place through one of two objects:
  • A data area is a fixed-size object that any job running on the system can read from or write to. Think of it as a virtual whiteboard. You can set it up to contain one of the following kinds of data:
    • A character string of up to 2000 bytes
    • A decimal number
    • A Boolean value (TRUE or FALSE)
  • A data queue is a variable-length object that can hold any number of messages from any number of jobs. Data queues are similar to WebSphere® MQ message queues.
A data area has lower overhead than a data queue, so your choice of which object to use generally depends on the complexity of your task. You might use a data area, for example, to hold a flag that lets one program tell another to perform garbage collection. A data queue scenario is typically more complex, as in the following example:
  • One application listens for a specific type of request. For each request, it creates a record and adds that new record to the queue.
  • Other applications listen for new records created by the first application. One uses the record to update a database. Another uses the same record to generate an invoice.
EGL supports these iSeries® objects in two ways:
  • EGL Record parts that correspond to various iSeries® objects, including data areas and data queues, among others. The Record parts are located in the CommonDataParts.egl file.
  • A library of EGL functions that wrap iSeries® API calls. The specific library you use depends on the language you generate:
    • iCobolLib.egl is for COBOL generation.
    • iJavaLib.egl for Java generation. This library uses ExternalType parts that are implemented by classes from the IBM® Java Toolbox. See "Required IBM® Toolbox for Java" in this topic.

The simplest way to add these files to your workspace is to add the EGL with IBM i objects support feature to your project. For more information, see Features and facets of EGL projects.

For details of these Record parts and function calls, see the "Related reference" section at the end of this topic.

Required IBM® Toolbox for Java

Remote calls that have remoteComType = Java400 in the call linkage originate from Java or Debug and call a program on a System i® machine. EGL uses classes from the IBM® Toolbox for Java to enable these calls. Users making Java400 calls must download the jt400.jar library from the web and add it to the project classpath:
  1. Browse to the following location and follow the instructions for downloading the Toolbox for Java:
    http://www.ibm.com/systems/i/software/toolbox/index.html
  2. Extract the jt400.jar file to a directory on your system.
  3. Right-click the project name and click Properties > Java Build Path > Libraries.
  4. Click Add External JARS.
  5. Browse to the jt400.jar archive and click Open. Click OK to close the Properties window.