The output from a service request is returned by the gateway to
the client in XML format. The XML schema shown here, which is supplied
in member ISPZXSDO in the ISPF samples data set ISP.SISPSAMP, describes
the format and can be used to process the XML returned for a service
request:
<?xml version="1.0" encoding="ISO-8859-1" ?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="ISPF-OUTPUT">
<xs:complexType>
<xs:all>
<xs:element name="SERVICE-REQUEST"/>
<xs:element name="SERVICE-RESPONSE">
<xs:complexType>
<xs:all>
<xs:element name="ISPF-COMMAND"/>
<xs:element name="RETURN-CODE"/>
<xs:element name="ISPF"/>
</xs:all>
</xs:complexType>
</xs:element>
<xs:element name="OPERATIONS-LOG"/>
</xs:all>
</xs:complexType>
</xs:element>
</xs:schema>
Here is the XML returned for the TSO LISTCAT command above:
<?xml version="1.0"?>
<ISPF-OUTPUT>
<SERVICE-REQUEST>
<service>TSO</service>
<session>NONE</session>
<command>LISTC ENT('SYS1.LINKLIB')</command>
</SERVICE-REQUEST>
<SERVICE-RESPONSE>
<ISPF-COMMAND>
</ISPF-COMMAND>
<![CDATA[
NONVSAM ------- SYS1.LINKLIB
IN-CAT --- CATALOG.MASTER.SYSPLEXD
READY
END
]]>
</TSO>
</SERVICE-RESPONSE>
<OPERATIONS-LOG>
<![CDATA[
Content-type: text/plain
Entering ISPZINT (Service initialization)
About to read from fileno(stdin) = 0
Data read from STDIN is TSO LISTC ENT('SYS1.LINKLIB')
EPOCH secs = 1202109526
Local Date & time: Mon Feb 4 02:18:46 2008
Hour: 2 Min: 18 Sec 46
Function ID timestamp = ID008326
Environment variables:
0 QUERY_STRING=
1 CONTENT_TYPE=application/x-www-form-urlencoded
2 PATH=/bin:.:/usr/sbin:/usr/lpp/internet/bin:/usr/lpp/internet/sbin:
/usr/lpp/products/java142/J1.4/bin/
3 AUTH_TYPE=Basic
4 DOCUMENT_URI=/ISPZXML
5 SHELL=/bin/sh
6 HTTPS=OFF
7 HTTP_ACCEPT=text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2
8 HTTP_USER_AGENT=Java1.3.1
9 SERVER_PORT=1726
10 RULE_FILE=//DD:CONF
11 GATEWAY_INTERFACE=CGI/1.1
12 PATH_INFO=
13 CONTENT_LENGTH=274
14 _CEE_RUNOPTS=ENVAR("_CEE_ENVFILE=//DD:ENV")
15 _BPX_SPAWN_SCRIPT=YES
16 REFERER_URL=
17 _=./ISPZINT
18 CLASSPATH=.:/usr/lpp/internet/server_root/CAServlet
19 STEPLIB=CURRENT
20 REQUEST_METHOD=POST
21 REMOTE_ADDR=9.190.236.239
22 LANG=C
23 LIBPATH=/bin:/usr/lpp/internet/bin:/usr/lpp/internet/sbin
24 REMOTE_USER=USERNME
25 SERVER_ADDR=192.168.123.11
26 FSCP=IBM-1047
27 PATH_TRANSLATED=
28 HTTP_CONNECTION=keep-alive
29 SERVER_TOKEN=1
30 HTTP_HOST=PTHISD1.AU.IBM.COM
31 _BPX_SHAREAS=YES
32 CGI_ISPCONF=/etc/ispf
33 SERVER_SOFTWARE=IBM HTTP Server/V5R3M0
34 REPORTBITS=77
35 DOCUMENT_ROOT=usr/lpp/ispf/bin
36 NETCP=ISO8859-1
37 CGI_ISPWORK=/var/ispf
38 COUNTERDIR=NULL
39 LC_ALL=en_US.IBM-1047
40 CGI_DTCONF=/etc/ispf
41 _BPX_USERID=USERNME
42 SERVER_PROTOCOL=HTTP/1.1
43 JAVA_HOME=/usr/lpp/products/java142/J1.4/
44 HTTPS_KEYSIZE=
45 TZ=EST5EDT
46 _CEE_ENVFILE=//DD:ENV
47 _BPX_BATCH_SPAWN=SPAWN
48 SCRIPT_NAME=/ISPZXML
49 NLSPATH=/usr/lib/nls/msg/%L/%N:/usr/lpp/internet/%L/%N:
/usr/lib/nls/msg/En_US.IBM-1047/%N
50 CGI_DTWORK=/var/ispf
51 DOCUMENT_NAME=usr/lpp/ispf/bin/ISPZXML
52 SERVER_NAME=PTHISD1.AU.IBM.COM
Number of environment variables is 53
Protocol = HTTP
FSCP = IBM-1047
NETCP = ISO8859-1
CGI_ISPCONF = /etc/ispf
CGI_ISPWORK = /var/ispf
CGI_TRANTABLE =
Server PATH = /bin:.:/usr/sbin:/usr/lpp/internet/bin:
/usr/lpp/internet/sbin:/usr/lpp/products/java142/J1.4/bin/
About to spawn task for ISPZTSO
Parameters passed to ISPZTSO - LISTC ENT('SYS1.LINKLIB')
Return code from ISPZTSO is 0
About to open /tmp/USERNME.ID008326.SYSTSPRT
*** XML-NOTE *** Reference tagged SERVICE-RESPONSE
OUT.84
]]>
</OPERATIONS-LOG>
<ISPF-OUTPUT>
Shown here is the XML returned from running the DINFO REXX program
in a "reusable" ISPF session (see above):
<?xml version="1.0"?>
<ISPF-OUTPUT>
<SERVICE-REQUEST>
<service>ISPF</service>
<session>REUSE</session>
<command>TSO DINFO sys1.linklib</command>
<ispprof>USERNME.TEST.ISPPROF</ispprof>
</SERVICE-REQUEST>
<SERVICE-RESPONSE>
<ISPF-COMMAND>
SELECT CMD(DINFO sys1.linklib) NEST
</ISPF-COMMAND>
<RETURN-CODE>0</RETURN-CODE>
<ISPF>
<![CDATA[
Volume = $$SR86
Primary allocation = 2398 BLOCK
Secondary allocation = 0 BLOCK
]]>
</ISPF>
</SERVICE-RESPONSE>
<OPERATIONS-LOG>
<![CDATA[
Content-type: text/plain
Entering ISPZINT (Service initialization)
About to read from fileno(stdin) = 0
Data read from STDIN is ISPF TSO DINFO sys1.linklib&SESSION=SPAWN
&ISPPROF=USERNME.TEST.ISPPROF
EPOCH secs = 1202113932
Local Date & time: Mon Feb 4 03:32:12 2008
Hour: 3 Min: 32 Sec 12
Function ID timestamp = ID012732
Environment variables:
0 QUERY_STRING=
1 CONTENT_TYPE=application/x-www-form-urlencoded
2 PATH=/bin:.:/usr/sbin:/usr/lpp/internet/bin:/usr/lpp/internet/sbin:
/usr/lpp/products/java142/J1.4/bin/
3 AUTH_TYPE=Basic
4 DOCUMENT_URI=/ISPZXML
5 SHELL=/bin/sh
6 HTTPS=OFF
7 HTTP_ACCEPT=text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2
8 HTTP_USER_AGENT=Java1.3.1
9 SERVER_PORT=1726
10 RULE_FILE=//DD:CONF
11 GATEWAY_INTERFACE=CGI/1.1
12 PATH_INFO=
13 CONTENT_LENGTH=313
14 _CEE_RUNOPTS=ENVAR("_CEE_ENVFILE=//DD:ENV")
15 _BPX_SPAWN_SCRIPT=YES
16 REFERER_URL=
17 _=./ISPZINT
18 CLASSPATH=.:/usr/lpp/internet/server_root/CAServlet
19 STEPLIB=CURRENT
20 REQUEST_METHOD=POST
21 REMOTE_ADDR=9.190.236.239
22 LANG=C
23 LIBPATH=/bin:/usr/lpp/internet/bin:/usr/lpp/internet/sbin
24 REMOTE_USER=USERNME
25 SERVER_ADDR=192.168.123.11
26 FSCP=IBM-1047
27 PATH_TRANSLATED=
28 HTTP_CONNECTION=keep-alive
29 SERVER_TOKEN=1
30 HTTP_HOST=PTHISD1.AU.IBM.COM
31 _BPX_SHAREAS=YES
32 CGI_ISPCONF=/etc/ispf
33 SERVER_SOFTWARE=IBM HTTP Server/V5R3M0
34 REPORTBITS=77
35 DOCUMENT_ROOT=usr/lpp/ispf/bin
36 NETCP=ISO8859-1
37 CGI_ISPWORK=/var/ispf
38 COUNTERDIR=NULL
39 LC_ALL=en_US.IBM-1047
40 CGI_DTCONF=/etc/ispf
41 _BPX_USERID=USERNME
42 SERVER_PROTOCOL=HTTP/1.1
43 JAVA_HOME=/usr/lpp/products/java142/J1.4/
44 HTTPS_KEYSIZE=
45 TZ=EST5EDT
46 _CEE_ENVFILE=//DD:ENV
47 _BPX_BATCH_SPAWN=SPAWN
48 SCRIPT_NAME=/ISPZXML
49 NLSPATH=/usr/lib/nls/msg/%L/%N:/usr/lpp/internet/%L/%N:
/usr/lib/nls/msg/En_US.
IBM-1047/%N
50 CGI_DTWORK=/var/ispf
51 DOCUMENT_NAME=usr/lpp/ispf/bin/ISPZXML
52 SERVER_NAME=PTHISD1.AU.IBM.COM
Number of environment variables is 53
Protocol = HTTP
FSCP = IBM-1047
NETCP = ISO8859-1
CGI_ISPCONF = /etc/ispf
CGI_ISPWORK = /var/ispf
CGI_TRANTABLE =
Server PATH = /bin:.:/usr/sbin:/usr/lpp/internet/bin:/usr/lpp/internet/sbin:
/usr/lpp/products/java142/J1.4/bin/
ISPF standalone function invoked
&ISPPROF value = USERNME.TEST.ISPPROF
ISPF COMMAND = ISPF TSO DINFO sys1.linklib
ISPF PROFILE = USERNME.TEST.ISPPROF
Re-usable ISPF session = SPAWN
About to spawn task for ISPZTSO
Parameters passed to ISPZTSO - PROFILE
Return code from ISPZTSO is 0
About to process PROFILE data in /tmp/USERNME.ID012732.SYSTSPRT
About to malloc() 252 bytes for profdat
*** PROFILE data: 1IKJ56688I CHAR(0) LINE(0) PROMPT INTERCOM
NOPAUSE MSGID MODE
WTPMSG NORECOVER PREFIX(USERNME) PLANGUAGE(ENU) SLANGUAG E(ENU)
VARSTORAGE(LOW)
IKJ56689I
DEFAULT LINE/CHARACTER DELETE CHARACTERS IN EFFECT FOR THIS TERMINAL READY END
Temporary data set prefix set to : USERNME
About to call bpxwdyn to allocate VCMTEMP
Allocating data set USERNME.SCLMDT.VCMISPF.ID012732 to the VCMTEMP DD
1024 bytes of ISPF TSO DINFO sys1.linklib written to VCMTEMP
1024 bytes of /etc/SCLMDTIS;/var/ispf written to VCMTEMP
1024 bytes of /bin:.:/usr/sbin:/usr/lpp/internet/bin:/usr/lpp/internet/sbin:
/usr/lpp/products/java142/J1.4/bin/~~NONE written to VCMTEMP
Parameter to be passed to ISPZTSO CALL *(ISPZCNT)
'+ISPF ID012732 USERNME NONE NONE
NONE NONE NONE NONE NONE USERNME.TEST.ISPPROF ISPF TSO DINFO sys1.linklib'
Entering Spawn Processing: 03:32:12
PID of this process = 999
RESPfile is /var/ispf/WORKAREA/USERNME/ISPFPID.999
Group PID of this process = 50332642
About to issue system command: ps -u USERNME -o pid,pgid,jobname,xasid,comm
>/var/ispf/WORKAREA/USERNME/ISPZINT.pidlog
PID=6 PGID=50332642 JOBNAME=USERNME ASID=7A COMMAND=/bin/ps
PID=50332642 PGID=50332642 JOBNAME=USERNME ASID=90
COMMAND=/usr/lpp/ispf/bin/ISPZXML
PID=67109859 PGID=50332642 JOBNAME=USERNME ASID=8B COMMAND=/bin/sh
PID=16778213 PGID=50332642 JOBNAME=USERNME ASID=8B COMMAND=./ISPZXENV
PID=998 PGID=50332642 JOBNAME=USERNME ASID=80 COMMAND=/bin/sh
PID=999 PGID=50332642 JOBNAME=USERNME ASID=92 COMMAND=./ISPZINT
PID=16778216 PGID=50332642 JOBNAME=USERNME ASID=7A COMMAND=/bin/sh
No active ISPF session found - new TSO/ISPF session started
About to issue system command: rm /var/ispf/WORKAREA/USERNME/ISPFPID*
mkdir /var/ispf/WORKAREA/USERNME rc = -1
New SIGfile = /var/ispf/WORKAREA/USERNME/ISPFPID.signal
New CMDfile = /var/ispf/WORKAREA/USERNME/ISPFPID.cmd
RUN directory = /usr/lpp/ispf/bin/
About to spawn task for ISPZTSO
Parameters passed to ISPZTSO - CALL *(ISPZCNT) '+ISPF ID012732
USERNME NONE NONE
NONE NONE NONE NONE NONE USERNME.TEST.ISPPROF ISPF TSO DINFO sys1.linklib'
Return code from ISPZTSO is 0
Waiting on SIGNAL return 03:32:12
Read signal file: Output = COMPLETE
*** OUTPUT FROM ISPF SESSION ***
Entering ISPZCNT (ISPF Initialization)
Parameters +ISPF ID012732 USERNME NONE NONE NONE NONE NONE NONE NONE USERNME.
TEST.ISPPROF ISPF TSO DINFO SYS1.L
REC: sysproc=isp.sispclib,bzz.v1r1.sbzzclib,SYS2.CLIST.ISD1.USER,SCLMDW.V710.
SFEKPROC,WD4Z.V710.SFEKPROC
Allocation successful for SYSPROC
REC: sysexec=sclmdw.v3.test.exec,USERNME.sclmdw.exec,USERNME.exec
Allocation successful for SYSEXEC
REC: ispmlib=isp.sispmenu
Allocation successful for ISPMLIB
REC: isptlib=isp.sisptenu
Allocation successful for ISPTLIB
REC: ispplib=isp.sisppenu
Allocation successful for ISPPLIB
REC: ispslib=sclmdw.v3.dev.skels,bzz.v1r1.sbzzsenu,isp.sispsenu,isp.sispslib
Allocation successful for ISPSLIB
REC: isptrace=nullfile
Allocation successful for ISPTRACE
REC: ISPF_timeout = 300
IEBCOPY of ISPF profile RC = 00
NOTE: Data set allocations took 0.49 elapsed seconds
*** XML-NOTE *** Reference tagged SERVICE-RESPONSE
Current Process List:
PID PGID JOBNAME ASID COMMAND
50331654 50332642 USERNME 7a /bin/sh
10 50332642 USERNME 7a /bin/ps
50332642 50332642 USERNME 90 /usr/lpp/ispf/bin/ISPZXML
67109859 50332642 USERNME 8b /bin/sh
16778213 50332642 USERNME 8b ./ISPZXENV
998 50332642 USERNME 80 /bin/sh
999 50332642 USERNME 92 ./ISPZINT
50332648 50332642 USERNME4 89 ./ISPZTSO
]]>
</OPERATIONS-LOG>
<ISPF-OUTPUT>