Options for sharable protocols

This topic lists the protocol options that are available when you code an EGL service binding or native service binding or when you deploy a web service to CICS® or IBM® i. In the case of deployment, you are specifying details for accessing a COBOL program from the web service.
The following protocols are supported for an EGL service binding:
Local
For a requester accessing a service in the same run unit
CICSECI
For a Java™ requester accessing a COBOL service through the CICS Transaction Gateway (CTG) ECI interface
CICSJ2C
For a Java requester accessing a COBOL service through a J2C connector for the CICS Transaction Gateway
CICSSSL
For a Java requester accessing a COBOL service through the Secure Socket Layer (SSL) features of CICS Transaction Gateway (CTG)
JAVA400
For a Java requester accessing a COBOL service that is on IBM i. In this case, the connection details are managed by the Java requester.
JAVA400J2C
For a Java requester accessing a COBOL service that is on IBM i. This option is available only if the Java requester is running under an application server that is fully compliant with Java EE, such as IBM WebSphere® Application Server rather than Apache Tomcat. When JAVA400J2C is in use, the connection details such as security credentials are managed by the application server. EGL-generated applications must not share J2C connectors with non-EGL-generated applications.

JAVA400J2C does not support a stateful connection, but lets the user control the current library and library list used on the host.

TCPIP
For a Java requester accessing a Java service through the TCP/IP protocol
The following protocols are supported for a native service binding:
SYSTEM-I LOCAL
For a COBOL requester accessing a COBOL service that is on the same IBM i machine. In this case, the service code is included in the EGL-generated code. You cannot change the binding detail at run time.
JAVA400
For a Java requester accessing a COBOL service that is on IBM i. In this case, the connection details are managed by the Java requester.
JAVA400J2C
For a Java requester accessing a COBOL service that is on IBM i. This option is available only if the Java requester is running under an application server that is fully compliant with Java EE, such as WebSphere Application Server rather than Apache Tomcat. When JAVA400J2C is in use, the connection details such as security credentials are managed by the application server. EGL-generated applications must not share J2C connectors with non-EGL-generated applications.

JAVA400J2C does not support a stateful invocation, but lets the user control the current library and library list used on the host.

Depending on the protocol, you specify attributes from the following list:
location
The server and path on which the service is located, such as myServer.myCompany.com/myService
password
The password for the IBM i system. Specify the user ID with the userID option.
userID
The user ID for the IBM i system. If the connection type is JAVA400J2C, the security credentials are usually handled by the application server. If you specify user ID and password in the connection, the values that you specify are used.
bindDir
For a SYSTEM-I.LOCAL connection, a fully qualified binding directory such as LIBNAME/BIND_DIR_NAME, as used to access the service program
conversionTable
The name of the conversion table that converts data on a call to the service. Conversion is necessary when the code page that is used for encoding text on the service is different from the encoding that is used by the requester. For more information about conversion tables, see "Data conversion."
currentLibrary
For a JAVA400J2C connection, the name used to set the library on the host job. For example, *USRPRF.or *CRTDFT.
ctgKeyStore
The name of the keystore generated with the CICS Transaction Gateway tool IKEYMAN
ctgKeyStorePassword
The password that is used when generating the keystore
ctgLocation
The URL for accessing the service through a CICS Transaction Gateway (CTG) server. Specify the related port with the ctgPort option.
ctgPort
The port through which to access a service through a CICS Transaction Gateway (CTG) server
libraries
For a JAVA400J2C connection, a list of libraries, such that each entry is a library name followed by a position value that defaults to * LAST (ensuring that the entry is placed after any entries that have the alternative position value, which is *FIRST).
Here is an example value for libraries:
MYMQLIB,MYFILLIB,MYDBLIB *FIRST
library
For a JAVA400 or SYSTEM-I.LOCAL connection, the name of the library in which the service is located on the IBM i system.
location
For a TCPIP connection, the TCPIP host name or address. For a JAVA400 connection, the server and path on which the service is located, such as myServer.myCompany.com/myService. For a JAVA400J2C, the JNDI name specified in the application server. For a CICSECI or CICSSSL connection, the CICS system identifier. For a CICSJ2C connection, the JNDI name of the ConnectionFactory object that you establish for the CICS transaction started by the call.
password
The password for the IBM i system. Specify the user ID with the userID option. The user ID for the IBM i system. If the connection type is JAVA400J2C, the security credentials are usually handled by the application server. If you specify userID and password in the connection, the values you specify are used in place of any others.
serverID
For a TCPIP connection, the port number of the listener of the service. For a CICSJ2C, CICSSSL, or CICSECI connection, the ID of a CICS transaction being called. The default is the CICS server system mirror transaction (CPMI).
transaction
The name of the transaction you create as a copy of the CPIH transaction with an increased Transaction Work Area size, as explained in “Special considerations for generating EGL or SOAP services for z/OS® CICS.”
userID
The user ID for the system
  • On IBM i, if the connection type is JAVA400J2C, the security credentials are usually handled by the application server. If you specify userID and password in the connection, the values you specify are used in place of any others.
  • On CICS, specify this value if you want to run the transaction as a specific user.

Feedback