CA Workload Automation ESP Edition

Expand all | Collapse all

ESP/JCL invoking a Webservice via a POST

Jump to Best Answer
  • 1.  ESP/JCL invoking a Webservice via a POST

    Posted 10-29-2019 06:10 PM
    Hello Everyone,

    I am fairly new to this community. We are trying to implement a process of ESP directly invoking a web service via POST. We currently do this via a JCL that invokes a batch module which EXCI links a CICS module which eventually does a WEB CONVERSE (POST) to the URL/PATH.

    I would like to know how to make everything driven by ESP or just JCL eliminating the COBOL/CICS route.

    Any help in this regard is appreciated.. Awaiting valuable suggestions.

    I have heard/read about Utility CYBESWS1 briefly but would love if we have any working examples that I can look at and drive a solution at our Shop.

    Thanks !


  • 2.  RE: ESP/JCL invoking a Webservice via a POST

    Posted 10-30-2019 09:37 AM
    Welcome to the community! While I don't have the technical information you're looking for, I'm sure that someone here has some information to share with you.

    Stay tuned!

    ------------------------------
    Lenn Thompson
    Community Manager, Mainframe Division
    Broadcom Inc.
    lenn.thompson@broadcom.com
    ------------------------------



  • 3.  RE: ESP/JCL invoking a Webservice via a POST
    Best Answer

    Posted 10-30-2019 12:48 PM
    Hi,
    The CYBESWS1 was creates a message in a standard RESTAPI format.  It was specifically created to interface into ESP.  This only works for rest format and not doclit or Web service types. I know this method works for interfacing into ESP. I am not sure if it will interface into other products.  For other products I normally use a curl command from a UNIX box.  I can send examples of this.

    The POST command that is produced by CYBESWS1 looks like this.
    POST /command HTTP/1.1..Host: 10.175.84.11:6167..User-Agent:  CYBESWS1/1.0..Authorization: Basic UE9XRE8wMzpQMFNUTUFO..Content-Length:  101..Content-Type: application/json....{"info":{"status":"req","cont":"eom","type":"command"},"data":{"request":"TRIGGER POWDO03.TEMPLATE"}}

    Below is my example JCL and datasets.
    The CYBESS85 and CYBESS86 members can be found in the HLQ.CD7YSAMP library.

    JCL
    //S1 EXEC PGM=CYBESWS1,TIME=1440,REGION=0M
    //STEPLIB DD DSN=CYB2.TS.ESP.DP114MSM.CD7YLOAD,DISP=SHR
    //WS1PARM DD DSN=CYB2.TS.ESP.DP114MSM.CD7YSAMP(CYBESS85),DISP=SHR
    //WS1CMD DD DSN=CYB2.TS.ESP.DP114MSM.CD7YSAMP(CYBESS86),DISP=SHR
    //SYSPRINT DD SYSOUT=*

    CYBESS85
    /* REF: Member CYBESS85 */

    /* COPYRIGHT(C) 2012 CA */

    /*-----------------------------------------------------------------*/
    /* Sample WS1PARM data set */
    /*-----------------------------------------------------------------*/

    /* Request 1 session(s); -
    stop after a total of 1 session(s). */
    SET SESSIONS(1) SESSIONLIMIT(1)
    HOST 11.222.33.44
    PORT 6000
    USERID useridhere
    PASSWORD passwordhere
    WS1TRACE SYSOUT(X)
    TCPTRACE SYSOUT(X)
    EXIT

    CYBESS86
    /* REF: Member CYBESS86 */

    /* COPYRIGHT(C) 2012 CA */

    /*-----------------------------------------------------------------*/
    /* Sample WS1CMD data set */
    /*-----------------------------------------------------------------*/

    /* The SRVRCMD statement below generates a web service request */
    /* that submits the LISTCAL command. */
    /* To submit a different command, replace LISTCAL by the desired */
    /* command. */

    SRVRCMD 'TRIGGER USERID.TEST'

    /* Lines after the EXIT command are ignored. */

    EXIT

    MORE INFO
    To enable other types of WEB SERVICES a system agent is required with a Web Service Plugin. This is something like a DOCLIT type where a WSDL is used. There is some setup to this Below is a link to the documentation for the Web Service plugin.
    https://techdocs.broadcom.com/content/broadcom/techdocs/us/en/ca-enterprise-software/intelligent-automation/workload-automation-agent-for-web-services/11-4.html

    Don