Tuesday, June 3, 2014

IBM i 6.1, 7.1 and Web Services - References

In the following list we present some useful references on IBM i integrated Web Services capabilities as well as DB2 for i Web services for versions 6.1 and 7.1.

Integrated Web Services for IBM i 

The Create Web Services Server wizard provides a convenient way to externalize programs running on IBM i, such as RPG or COBOL ILE programs, as Web services. This is available from IBM i 6.1. A screenshot is displayed below:

Web Administration GUI for IBM i
In 7.1, the integrated Web Application Server, supports Java 5 and 6 applications for 32-bit and 64-bit JVMs. The Integrated Web Services Server now supports programs in iASP, supports Static WSDL, and has shown up to 2x performance improvements.

The IBM i operating system integrates software technologies that support the externalization of an ILE (and a non-ILE ?) program object as a web service and the consumption of a web service by an ILE program object. These technologies are the integrated web services server and the integrated web services client for ILE.

In version 6.1, the tools supported only the generation of C and C++ code, and you had to manually generate the program or service program that contained the generated code. In 7.1, the tools were enhanced to generate RPG code in addition to automatically creating the service program that contains the generated code. The integrated web services client for ILE is enhanced to enable users to generate RPG code that can be used directly from an RPG application to invoke a web service.

The integrated web services client for ILE in IBM i 7.1, IBM i 6.1, and IBM i 5.4 is enhanced to support RPG stubs (proxy code) that are used directly from an RPQ application to invoke web service. This new capability does not require the user to learn web service protocols, and more importantly, everything can be done within the RPG language.

The wsdl2rpg.sh tool is enhanced to support generation of RPG web service client stubs. This is the same shell script that, for years, has supported the ability to generate C and C++ stubs given a WSDL file and generate RPG stubs. Once the RPG stub has been generated and compiled into a service program, an RPG application can then transparently invoke web service operations via the RPG stub interfaces. Users have the ability to create a service program automatically that is made up of the C and RPG stubs.

There are three critical arguments to the tool whose values are dependent on the size of expected strings, arrays, and binary data that is exchanged in SOAP messages between the client and the server. The sizes can be passed to the tool so the tool can generate fields that can contain the data without any loss. Note that even though stubs are generated, RPG files may fail to compile due to sizes of fields or data structures exceeding the language limits. For example, in IBM i 5.4 the size of a data structure cannot exceed 65535 bytes, while in IBM i 6.1, the limit is 16773104 bytes.

The wsdl2rpg.sh tool is located in the following directory: /qibm/proddata/os/webservices/v1/client/bin.

The service program that would need to be binded to is QSYSDIR/QAXIS10CC. These new web service enhancements are included in the latest level of the HTTP Server Group PTF - SF99368.

For more information check the following:

Integrated Web Services for IBM i site from IBM with a lot of information
Web services for IBM i - Getting started
Practical Web Services for RPG

Old but not odd documents:

IBM i 6.1 Technical Overview

DB2 for i Web services 

Integrate Web Services With DB2 for i 7.1 Part One, from Dawn May
Integrate Web Services With DB2 for i 7.1 Part Two, from Dawn May
Accessing Web services using IBM DB2 for i HTTP UDFs and UDTFs, white paper
HTTP RESTful services from DB2

Prerequisites

Prerequisites that are required to be installed on the system in order to use the Integrated Web Services for IBM i support.
ReleaseProduct prerequisites
7.15770SS1 Option 3 - Extended Base Directory Support
5770SS1 Option 12 - Host Servers
5770SS1 Option 30 - Qshell
5770SS1 Option 33 - PASE
5770SS1 Option 34 - Digital Certificate Manager 4 (needed only for Web services client)
5761JV1 Option 11 - IBM Developer Kit for Java (Java SE 6 32 bit)
5770DG1 - IBM HTTP Server for IBM i
Source: Integrated Web Services for IBM i - Support page
ITJungle PTF index

No comments:

Post a Comment