Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
David Clancy
The mainframe breakfast network
5th November 2003
Acknowledgments
The following are trademarks of International Business Machines Corporation in the United States, other countries, or both:
IBM, CICS, CICS/TS, CICS Transaction Server, DB2, MQSeries, OS/390, Z/OS, WebSphere.
Java, JavaBeans, and all Java-based trademarks and logos are trademarks of Sun Microsystems, Inc. in the United States,
other countries, or both.
Microsoft, Windows, Windows NT, and the Windows logo are trademarks of Microsoft Corporation in the United States, other
countries, or both.
Other company, product, and service names and logos may be trademarks or service marks of others.
Dacworks Limited,
Steepdown House,
The Crescent,
Steyning,
West Sussex,
BN44 3GD,
England,
United Kingdom.
telephone: 44 (0) 1903 814731
web: http://www.dacworks.co.uk
email: dacworks@btinternet.com
Introduction
IBM SOAP for CICS feature
SOAP overview
SOAP request and response examples
Inbound CICS support
Outbound CICS support
DFHWBCLI
Enterprise compilers
XML parse support
Unicode support
Message generation
Using CICS document commands
CICS/TS 2.3 enhancements
JCICS support for document commands
Summary
Nov 5th 2003 © Dacworks limited Page 3
DACWORKS
Availability
IBM SOAP for CICS feature
Delivers fully supported SOAP access to CICS
Replaces CICS Technology Preview made available as SupportPac CA1M
Available since September for CICS/TS 2.2
Price
There is no charge for the IBM SOAP for CICS feature
CICS
Servers
Nov 5th 2003 © Dacworks limited Page 5
DACWORKS
Input to DFHWBCLI
URL of the destination server External
URL of any proxy server DFHWBCLI Web
Method
HTTP request headers Server
Optional CICS Document token
Input to DFHWBCLI includes the SOAP request Output includes SOAP Response
- <GetUKLocationByTownResponse
xmlns="http://www.webserviceX.NET">
<?xml version="1.0" encoding="utf-8" ?> <soap:Envelope <GetUKLocationByTownResult>
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" <NewDataSet>
xmlns:xsd="http://www.w3.org/2001/XMLSchema" <Table>
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <Town>Steyning</Town>
<soap:Body> <County>West Sussex</County>
<GetUKLocationByTown xmlns="http://www.webserviceX.NET"> <PostCode>BN44</PostCode>
<Town>Steyning</Town> </GetUKLocationByTown> </Table>
</soap:Body> </NewDataSet>
</soap:Envelope> </GetUKLocationByTownResult>
</GetUKLocationByTownResponse>
Message Output
Generator Mapper
IIOP WEBSPHERE
XML ECI
DISTRIBUTED
SOURCE
Message parser
WebSphere Studio Enterprise Developer (WSED)
Provides a tool to generate converter routines from COBOL copybooks
Enterprise COBOL V3 and Enterprise PL/I V3
Support a highly efficient event-based parser to roll your own mappings
<items command="update" result="success"> Start of document: length=00000450 characters.
<record> Start element tag: <items>
<department>1</department>
Attribute name: <command>
<employeeNumber>00001</employeeNumber>
<name>DAVID CLANCY</name> Attribute value characters: <update>
<address1>DACWORKS</address1> Attribute name: <result>
<address2>STEYNING</address2> Attribute value characters: <success>
<address3>ENGLAND</address3> Content characters: < >
<phone>12345678</phone>
Start element tag: <record>
<salary>12345600</ salary>
<startDate>01082003</startDate> Start element tag: <department>
<timeStamp><![CDATA[003243164395910C]]></timeStamp> Content characters: <1>
<remarks>www.dacworks.co.uk</remarks> End element tag: <department>
</record> Start element tag: <employeeNumber>
</items>
...
CBTS CONTAINERS
Output Includes SOAP Response
New or modified
- <GetUKLocationByTownResponse STATE DATA
xmlns="http://www.webserviceX.NET">
CICS application
<GetUKLocationByTownResult>
<NewDataSet>
<Table>
<Town>Steyning</Town>
XML Mapping
<County>West Sussex</County> Parse CICS
<PostCode>BN44</PostCode> COMMAREA Commarea based
</Table> 32K CICS application
</NewDataSet>
</GetUKLocationByTownResult>
</GetUKLocationByTownResponse>
Message generation
CICS Web Support Document commands (CICS/TS 1.3)
EXEC CICS DOCUMENT CREATE
EXEC CICS DOCUMENT INSERT
EXEC CICS DOCUMENT SET
EXEC CICS DOCUMENT RETRIEVE
Message
Mapping generation
CICS CICS
COMMAREA Commarea based COMMAREA
32K CICS application 32K
Message generation - 1
DOCUMENT CREATE
Creates a document buffer up to 1Gb in size
Could be html, xml, wml, soap, gif, jpg - i.e. any MIME type
Can be sent with CWS WEB SEND command over http(s) or RETRIEVED for
alternative transmission
EXEC CICS
DOCUMENT CREATE
DOCTOKEN(WS-TOKEN)
DOCSIZE(WS-RETRIEVE-LENGTH)
TEMPLATE('DACP04')
SYMBOLLIST(WS-SYMBOLS)
LISTLENGTH(LENGTH OF WS-SYMBOLS)
END-EXEC
Message generation - 2
DOCUMENT INSERT
Allows the document to be composed from multiple templates
Templates simplify building dynamic content - alternative to jsp
CICS templates can be built with any editor, WSED, FRONTPAGE etc.
EXEC CICS
DOCUMENT INSERT
DOCTOKEN(WS-TOKEN)
DOCSIZE(WS-RETRIEVE-LENGTH)
TEMPLATE('DACPREC')
END-EXEC.
Message generation - 3
DOCUMENT SET
Allows for symbol substitution in document templates
Symbol values may be fixed or variable length
Symbols may be updated individually or in groups (symbol lists)
Message generation - 4
DOCUMENT RETRIEVE (optional)
Allows access to document buffer for alternative transmission from CICS
The message can be delivered by any CICS mechanism: commarea, transient
data queue, WebSphere MQ, IIOP or HTTP(S)
Summary
IBM SOAP for CICS feature
Provides a firewall-friendly way for exchanging XML with CICS
Message parsing, mapping and message generation run under CICS
Supports very large messages
UTF-8 to host codepage conversion now possible with Enterprise compilers
Allows Microsoft and distributed client community direct access to CICS in a
format they understand - XML/SOAP
CICS
Servers
Nov 5th 2003 © Dacworks limited Page 24
DACWORKS
Further information
information
IBM SOAP for CICS feature
http://www.ibm.com/software/htp/cics/soap/
CICS/TS 2.3 Announcement
http://www-3.ibm.com/software/htp/cics/tserver/v23/
Enterprise COBOL
http://www-3.ibm.com/software/ad/cobol/zos/library/
XML 1.1 specification
http://www.w3.org/TR/xml11/
SOAP 1.1 specification
http://www.w3.org/TR/SOAP/
CICS SOAP and JCICS workshops
http://www.dacworks.co.uk