|
Developing an IMS™ Connect client application to access IMS transactions can be daunting for application developers, who might not have all the necessary skills to do so. To implement complex, real-world business scenarios, an IMS Connect application developer needs specific programming skills to code an IMS Connect client, including in-depth knowledge of IMS Connect protocols, TCP/IP socket programming, message and header formats, and how to set header fields.
With the introduction of the new IMS Enterprise Suite Connect API for Java™, application developers need only minimal knowledge of IMS Connect to start developing client applications to communicate with IMS. The Connect API for Java is a simple, easy-to-use, lightweight programming solution for communicating with IMS transactions through IMS Connect. Developers can use a high-level programming language to write IMS Connect client applications. In addition, developers have the flexibility to run the applications standalone, without the overhead of an enterprise application server environment.
Here’s how the IMS Enterprise Suite Connect API for Java can save you development effort and costs:
- Lightweight programming solution in Java that is available to download at no additional charge, requires minimal setup, is easy to configure, and does not require any additional tooling.
- Potential to drastically reduce development time.
- Methods for finer-grained programmatic control. One beta customer saved up to 95% of the development time that would have been needed for a traditional roll-your-own IMS Connect client application with equivalent functionality.
- Client application developers are shielded from the complexity of the IMS Connect headers and protocols. Developers can use preconfigured values to create connections and interactions instead of setting these values manually.
- Developers can leverage Java support for code portability, exception handling, and logging. To accelerate development, developers can take advantage of an integrated development environment (IDE) for Java development such as IBM® Rational® Application Developer or IBM Rational Developer for System z®.
Using the Connect API for Java, client application developers have an easy way to create IMS Connect client applications in Java that can send input request messages to IMS Connect and retrieve response messages for processing. The Connect API for Java internally manages IMS Connect protocol integrity. If an error occurs during an interaction, the API returns an error message in a user-understandable format for debugging.
Figure 1 shows how the Connect API for Java hides the complexity of communication protocols for interactions with IMS Connect behind a simple programming interface.

Figure 1. The IMS Enterprise Suite Connect API for Java simplifies client interactions with IMS
The client application sets connection and interaction properties by loading from a profile, or configures the property values programmatically. To perform an interaction, the client application simply issues an execute function call. The interaction types supported by the Connect API for Java include SENDRECV, RESUMETPIPE, and several SENDONLY interaction types.
| IMS Connect protocol management |
The Connect API for Java handles the work of establishing a connection, creating an IMS Connect input message, sending the input message to IMS Connect, retrieving any output message returned by IMS Connect, and storing the message in a data structure for easy client application retrieval. Behind the scenes, and based on how the interaction is configured, the Connect API for Java can also handle any acknowledgement processing required by the IMS Connect protocol. The Connect API for Java also handles disconnecting from IMS Connect and IMS upon client application request.
| Fine-grained programming control |
The Connect API for Java also provides application developers with finer-grained control of connection and interaction handling. For example, developers can explicitly connect to and disconnect from IMS Connect; set the length and transaction code for input data; specify settings for the commit mode, synchronization level, different Resume Tpipe processing options, and message routing; and dynamically send negative or positive acknowledgement messages.
| Reusable connection and interaction profiles |
For added efficiency and flexibility for IMS customers, the Connect API for Java supports profiles. Profiles are plain text files that contain property name-value pairs that can be predefined for specific connection and interaction scenarios and reused to load connection and interaction property values in different application clients. Developers can also configure the connection and interaction properties dynamically in the client by using property-setter methods.
The Connect API for Java can issue OTMA-supported IMS commands, as well as the IMS Connect PING and RACF password change commands. Data encryption and client/server authentication with Secure Sockets Layer (SSL) is also supported. To help troubleshoot problems, the Connect API for Java provides support for logging and tracing.
| Which IMS communication solution is right for you: the Connect API for Java or the IMS TM resource adapter? |
IMS offers two application development solutions for communicating with IMS through IMS Connect: the Connect API for Java and the IMS TM resource adapter. Table 1 highlights the key usage considerations and differences between the two solutions.
|
Usage Consideration
|
IMS Enterprise Suite Connect API for Java
|
IMS TM Resource Adapter
|
|
Tools Integration
|
Standalone solution; does not require any IBM application development tooling or runtime Java application server.
|
Integrated with the IBM Rational IDEs and WebSphere®.
|
|
Runtime Environment
|
Best suited for developing IMS Connect RYO client applications.
|
Best suited for a Java Platform, Enterprise Edition (Java EE) environment.
|
|
Deployment Method
|
Deploy the JAR file that contains the API on the Java class path.
|
Deploy and set up to use Java EE Connector Architecture (JCA) connectivity by using the WebSphere Application Server administrative console.
|
|
IMS Connect Functionality Supported
|
Supports major functions, including CancelTimer, user-defined clientId, and ResumeTpipe interactions (AUTO, NOAUTO, and SINGLE), which are not supported by the IMS TM resource adapter.
|
Supports all major functions, including two-phase commit global transactions and synchronous callout, which are not supported by the Connect API for Java.
|
|
Cost
|
No-charge offering.
|
No-charge offering, but requires WebSphere Application Server.
|
|
Connection Management
|
Does not share connections across applications.
|
Uses WebSphere Application Server connection management for client application connection sharing.
|
Table 1: Key usage considerations and differences between the two solutions
The Connect API for Java has been announced and will be available as part of IMS Enterprise Suite Version 1.1. You can download the Connect API for Java from the IMS Connect Web site.
A version of the Connect API for the C programming language will also be available in the future. The code and updated information for the IMS Enterprise Suite Connect API for C will be delivered through the IMS service process. If you are interested in participating as a beta tester for the IMS Enterprise Suite Connect API for C, contact your IBM sales representative or IMS advocate to learn how to get involved.
|
 |
|