You can generate and deploy a logic part that runs on z/OS® CICS® and
accesses a web service.
Prerequisites
- You must have an EGL project, an EGL deployment descriptor, and
a Web Services Description Language (WSDL) file that provides interface
details about the service to access.
- If the EGL-generated COBOL code requests a web service and uses
HTTP basic authentication (that is, uses the serviceLib.setHTTPBasicAuthentication() system
function), the CICS system
administrator must define the transport handler ELAWSHBA to CICS by adding the following statements
to the requester pipeline CONFIGFILE:
<transport>
<default_http_transport_handler_list>
<handler>
<program>
ELAWSHBA
</program>
</handler>
</default_http_transport_handler_list>
</transport>
The transport handler ELAWSHBA is provided
with your EGL COBOL runtime product.
To deploy a web service requester to CICS:
- Add web service binding information. For more information, see
“Adding a SOAP service binding to a deployment descriptor.”
- Create a Program part that uses the web service.
- In the build descriptor of the project, set the following build
descriptor options:
- deploymentDescriptor
- The name of the EGL deployment descriptor to which you added the
binding information
- destDirectory
- The root HFS directory containing folders that receive the generated
web services binding file and WSDL file. An example destDirectory value
is /u/myname/requesters. CICS must have permission to read and write
to this directory.
The web services binding file is necessary to
convert SOAP messages to COBOL at run time.
- destHost
- Specify the name or numeric TCP/IP address of the target system
where the build server resides.
- destPassword
- Specifies the password that EGL uses to log on to the remote build
server where your output will be prepared for deployment.
- destPort
- Specify the port on which a remote build server is listening for
build requests.
- destUserID
- Specifies the user ID that EGL uses to log on to the remote build
server where preparation occurs.
- genDirectory
- Specifies the fully qualified path of the directory into which
EGL places generated output, control files, and results files.
- prep
- Set prep to YES.
- serverType
- Set serverType to CICS3.1.
- system
- Set system to ZOSCICS.
- Generate the program and the deployment descriptor.
- Define a web service PIPELINE:
- If you need to create a PIPELINE for requesters, type the following
command:
CEDA DEF PIPELINE(name) GROUP(group)
For name,
use the name of the new PIPELINE; for group,
use the name of the group.
- For CONFIGFILE, specify /u/cicsts31/pipelines/basicsoap11requester.xml.
If the code uses HTTP basic authentication, ensure that CONFIGFILE
references the re-linked transport handler ELAWSHBA, as noted earlier
in this topic.
- For SHELF, specify destDirectory/requester/shelf,
where destDirectory is the value that you
used for the destDirectory build descriptor
option.
- For WSDIR, specify destDirectory/requester,
where destDirectory is the value that you
used for the destDirectory build descriptor
option.
- Create a PROGRAM for the requester by typing the following command:
CEDA DEFINE PROGRAM(name) GROUP(group) LANGUAGE(COBOL)
For name,
use the program name; for group, use the
group name.
- Create a TRANSACTION for the requester by typing the following
command:
CEDA DEFINE TRANSACTION(name) GROUP(group) PROGRAM(programName) TWASIZE(1024)
Use
the transaction name for name, the group
name for group, and the program name for programName.
- Install the group by typing the following command:
CEDA INSTALL GROUP(group)
Use
the name of the group for group.
- Run the transaction.