Integrating CICS with the Web: Using the CICS Transaction Gateway 21/01/03
Geoff Sharman
[email protected]
1
CICS and the Web Jan 21 Webcast Presentation.PRZ
Positioning in e-business Infrastructure
Transaction Server
Pervasive Devices
CICS fits here 2
CICS and the Web Jan 21 Webcast Presentation.PRZ
Using CICS Transaction Gateway
HTTP HTML XML
CICS TS V2 IIOP, MQ
WebSphere zOS, zLinux CICS TG V5
intranet/ extranet/ internet
EXCI WebSphere V5, CICS TG V5
CICS COBOL Applications
SNA LU6.2 TCP62 TCP/IP
AIX, Solaris, HP-UX, Windows NT/2000
time
scale
WebSphere (any)
CICS Transaction Gateway is the primary option for connecting Web app servers to CICS applications using J2EE Connector Architecture
Other options will be discussed 3
CICS and the Web Jan 21 Webcast Presentation.PRZ
CICS TG & CICS UC Positioning
Server based CICS Transaction Gateway 5.0 - Multi-user server gateway complements WebSphere V4/V5 - Enabled for WSADIE - Re-uses key CUC technology -Separately packaged and priced
Browsers Supported CICS Servers Servers
Desktop based
Desktop PC 4
CICS Universal Client 5.0 - Single user, Windows NT, 2000, XP - Scalable 32 bit implementation - C/C++,COBOL, VB - Separately packaged & priced
CICS and the Web Jan 21 Webcast Presentation.PRZ
CICS Transaction Svr for zOS 2.2 CICS Transaction Svr for OS/390 1.3 CICS Transaction Svr for VSE 1.1.1 CICS/ESA 4.1 CICS/VSE 2.3 TXSeries 4.3 and 5.0 CICS/400 2.6 CICS Transaction Svr for Windows
Customers using CICS TG KeyBank Corp, USA TransAmerica Corp, USA Heritage Mutual Insurance, USA Local Government of Bologna, Italy RaboBank, Netherlands CenE Bankiers, Netherlands Revenue Canada Zurich Insurance, UK Union Central Insurance, Switzerland Kyushu Cellular Phone, Japan Scottish Equitable, UK Quelle, Germany Hewitt Associates, USA See: SOGO, Japan ibm.com/cics/case studies/ Government of Luxembourg ibm.com/cics/library/ts390/vol1iss12/article4.html Embratel, Brazil Receivable Management Services (formerly Dun & Bradstreet), USA and many others ...
5
CICS and the Web Jan 21 Webcast Presentation.PRZ
Using CICS TG: Basic Functions What's New in CICS Transaction Gateway V4.01?
6
CICS and the Web Jan 21 Webcast Presentation.PRZ
CICS TG Basics: Supported Interfaces Can work with any App Server, even Microsoft ... J2EE Client Interfaces
ECI Connector Class
COM Interfaces
EPI Connector Class EPI Beans/ support classes
Base CTG Client Interfaces in Java
Connect Disconnect
ECIRequest
EPIRequest
Base CTG Client Interfaces in C
7
CICS and the Web Jan 21 Webcast Presentation.PRZ
C++, VB Class Interfaces
Examples of using CICS TG - Trader Application CICS region
TRAD
3270 users
z/OS
TRADERPL
TRADERBL
Presentation logic
Business logic
C O 1. EXEC CICS RECEIVE M MAP M A 2. EXEC CICS LINK PROGRAM(TRADERBL) R COMMAREA(abcde) E A
LINK
C O M M A R E A
3. EXEC CICS SEND MAP
DB2 Tables or VSAM Files
1. EXEC CICS ADDRESS COMMAREA 2. EXEC SQL UPDATE TABLE(xxx) 3. EXEC CICS RETURN COMMAREA(vwxyz)
CUSTFILE COMPFILE
TRAD
(EPI)
ECI Java clients e.g Servlet
8
ECI (External Call Interface) EPI (External Presentation Interface) (Use the ECI whenever possible)
CICS and the Web Jan 21 Webcast Presentation.PRZ
CICS TG Basics: Operation on Distributed Server HTML user interface
HTML user interface
CICS TG may be configured: - on own Gateway server - on Websphere App Server Remote mode uses two network connections; Local mode uses one network connection
choose one ... remote mode local mode
WebSphere
WebSphere
Servlet / EJB ECI, EPI Remote interface
Servlet
SOCKETS HTTP SSL
Connector client classes
Gateway Client 9
Remote connector interface identical to local interface
Enterprise JavaBean
ECI, EPI Local interface
Gateway daemon
Client daemon
Gateway CICS and the Web Jan 21 Webcast Presentation.PRZ
SNA TCP62 TCP/IP
CICS Server
CICS TG Basics: Operation on zOS Server HTML user interface
HTML user interface
Gateway may be configured: - in own address space - in WAS address space Only ECI interface supported Remote connector interface identical to local interface
choose one ... local mode remote mode
EXCI used to access CICS
WebSphere
WebSphere Servlet / EJB
Remote interface Connector client classes
Servlet
SOCKETS HTTP SSL
Gateway Client 10
Enterprise JavaBean
ECI Local interface
Gateway daemon
EXCI Client layer
Gateway CICS and the Web Jan 21 Webcast Presentation.PRZ
CICS Server
Customer Scenario - Luxembourg Government Web LPAR1 WebSphere Application Server V3.5
IBM HTTP Server
W A S
C T G W
A S
W C A T S G
Sysplex Distributor
V
Application LPARS
AOR1 AOR2 AOR3
CICSPlex SM CMAS
Web LPAR2
A
WebSphere Application Server V3.5 Sysplex Distributor
IBM HTTP Server
W A S
C T G W
A S
AOR4 C T G
W C A T S G
Session Data
11
CICS TOR
CICSPlex SM CMAS
Session Data
I P
C T G
AOR5 CICS TOR
AOR6
CICSPlex SM CMAS CICS and the Web Jan 21 Webcast Presentation.PRZ
See www.ibm.com/eserver/zseries/zbulletin/pdf/issue30/cieproject.pdf
CICSPlex SM CMAS
CICS TG V5 - New Function Supports JDK 1.3
including JSSE (Java Secure Sockets Extension) for 128-bit encryption
Supports J2EE Connector Architecture (JCA)
ECI & EPI (AIX, Solaris, HP-UX, Windows NT/2000, Linux/390) ECI only, 2PC transactions & enhanced security (OS/390) async ECI calls also supported (all platforms)
Enhanced support for TCP62 (all platforms ex. OS/390) Removes SNA dependency for connection to CICS
Improved performance for ECI data transfers datastreams truncated to application data length
Improved availability, serviceability, manageability
Support for ARM (Automatic Restart Manager) on OS/390 enhanced logging; logging of EXCI return codes on OS/390 dynamic control of tracing level; management infrastructure for JMX (Java Management eXtensions)
12
CICS and the Web Jan 21 Webcast Presentation.PRZ
Support for J2EE Connectors in CICS TG What's New in CICS Transaction Gateway V4.01?
13
CICS and the Web Jan 21 Webcast Presentation.PRZ
Software Architecture for e-business An end-to-end architecture ... based on Java 2 Enterprise Edition Client-side presentation
Server-side presentation
Browser
Web Server
HTML
HTTP
14
IIOP
Java Server Pages
Session Beans
Session Beans
COBOL J2C
Java Servlets
Desktop
Other device Java client
Enterprise Business Logic and Data
EJB Container
IIOP
Java Applet
Java Application
Server-side Integration Logic
IIOP
Message Driven Beans
JMS Java Servlet
JDBC
DB2
JMS
C
Process Flow
Java Applicatns
Sockets
VSAM
Entity Beans
CICS and the Web Jan 21 Webcast Presentation.PRZ DB2
What do JCA Connectors do? Provide Common Client Interface for all back end servers
A Connector is generic runtime code, such as a J2EE architected connector, that transforms one calling interface into another
standard call interface hides connection details from Java applications each back end server still requires unique data format
An Adapter is runtime code, possibly generated by a tool, that converts one data format to another (e.g. converts a bean format into a CICS COMMAREA) Many solutions will use both connectors and adapters
Enable Service Provider Interface for Application Server
Leverage tool technology:
Common Client Interface
operate in "managed" or "unmanaged" environments managed environment enables connection pooling, transactions & security
Java command bean
Connectivity to specific backend may be encapsulated in an "adapter" bean WSAD/IE automates construction of interactivity/navigation & data format logic 15
CICS and the Web Jan 21 Webcast Presentation.PRZ
middleware connector
Service Provider Interface
Application server eg. WebSphere
JCA Connection Pooling with CICS TG HTML user interface
HTML user interface
Java application
JCA Connection Pooling applies to frontend connection between Connector client and Gateway
HTTP
IIOP
HTTP
Pooling of backend sessions between Client daemon and CICS is handled automatically On zOS, EXCI pipes are pooled & re-used automatically
WebSphere
WebSphere Servlet / EJB ECI, EPI Remote interface
Servlet
SOCKETS HTTP SSL
Connector client classes
16
Gateway Client
Enterprise JavaBean
ECI, EPI Local interface
Gateway daemon
Client daemon
Gateway CICS and the Web Jan 21 Webcast Presentation.PRZ
SNA TCP62 TCP/IP
CICS Server
JCA Tooling with WSADIE and WebSphere EE Enterprise Information System (eg. CICS)
System Services Flow Application
17
Adapter
Connector to EIS
WSADIE imports COBOL Copybook definition
WSADIE generates: "adapter" session bean flow logic for business integration
Tools
Replacement for VA-J EAB function under study
Metadata repository
CICS and the Web Jan 21 Webcast Presentation.PRZ
WSADIE captures flow logic via graphical tool
SOAP Support with WebSphere, CICS TG and CICS
WSIF InMessage HTTP
SOAP listener SOAP 2.2
CTG OutMessage
SNA TCP62 TCP/IP
CICS Server
Adapter bean
WebSphere V4
Uses WSIF (Web Services Invocation Framework) and SOAP 2.1 supplied with WebSphere EE WSADIE (WebSphere Studio Application Developer Integration Edition) generates "adapter" bean Uses JCA Connector with CICS TG for access to CICS 18
CICS and the Web Jan 21 Webcast Presentation.PRZ
Creating Web Services with XML Converters CICS Transaction Gateway can pass any data in COMMAREA - including XML can use to pass SOAP message payload Enterprise COBOL V3 includes fast XML parser can use for converter program - parses XML payload into COMMAREA New WebSphere Studio Enterprise Developer generates XML converter no programming needed BENEFIT: "wrappering" of existing COBOL application is done within CICS environment - no external visibility CICS TG
WAS
Client
XML Parser
Converter Driver
TestClient
Client-App
SOAP Client
Proxy
SOAP Servlet
XML Payload J2EE Connector
XML/COBOL Converter pgm Existing COBOL program
19
CICS and the Web Jan 21 Webcast Presentation.PRZ
Other Options What's New in CICS Transaction Gateway V4.01?
20
CICS and the Web Jan 21 Webcast Presentation.PRZ
Using Bean-to-Bean Communication with IIOP Non-transactional
CICS/ESA or CICS TS
WebSphere V3.5/V4 Servlet
Transactional 2PC
C
JCA Connector
sync on return CICS/ESA or CICS TS
WebSphere V5
EJB Servlet
C
Existing COBOL business logic
JCA Connector
WebSphere coordinates 2PC transaction*
Alternative 2PC scenario
IIOP
WebSphere V4/V5 Servlet
EJB
OMG 2PC transaction: either party may coordinate
*Full 2PC on zOS, some restrictions on distributed 21
Existing COBOL business logic
CICS and the Web Jan 21 Webcast Presentation.PRZ
CICS TS V2.2
EJB
C
Existing COBOL business logic
JCA Connector
Using WebSphere MQ Transactional 2PC
CICS/ESA or CICS TS
WebSphere V5
EJB Servlet
C
JCA Connector
Existing COBOL business logic
WebSphere coordinates 2PC transaction*
CICS TS
Alternative MQ scenario
MQSeries
WebSphere V4/V5 Servlet
EJB
JMS call: 3 transactions
*place msg on Q, tranport msg, take msg off Q
22
MQ DPL Bridge
CICS and the Web Jan 21 Webcast Presentation.PRZ
Existing COBOL business logic
From Host Integration to CICS Transaction Gateway 1. Host on Demand provides a JCA Connector for 3270 applications only Can connect to any 3270 application on CICS, IMS, TSO etc. Supports "generic screenable record" interface with J2EE, ie. a data record containing a field for each field on 3270 containing application data WSADIE contains tool to generate connector flows Limited by 3270 datastream architecture, eg. 1920 byte data transfer
2. CICS TG provides an improved connector for 3270 CICS applications Can connect to most CICS applications Uses LU6.2, TCP62 or TCP/IP networking rather than LU2 or TN3270 Supports "generic screenable record" interface with 3270 applications and connector flows Will support "custom screenable record" interface in future Custom screenable record interface will be mapped to ECI call to Link3270 Bridge provided by CICS TS 2.2 (no 3270 datastream flows)
3. CICS TG also provides a connector for COMMAREA applications Preferred design point for new CICS applications Enables re-use of application modules in many different contexts Currently limited to 32,500 byte data transfer, but limit will be relieved in future 23
CICS and the Web Jan 21 Webcast Presentation.PRZ
Where is CICS Transaction Gateway going? What's New in CICS Transaction Gateway V4.01?
24
CICS and the Web Jan 21 Webcast Presentation.PRZ
CICS Transaction Gateway ... beyond V5 Our strategy is to enhance the CICS Transaction Gateway and support the CICS Universal Client CICS TG V5 became available July 26th 2002 CTG V5.01 will be available in 2003
Medium term, we'll continue to provide the strategic "connector into CICS" and integrate with the latest technologies: support for J2EE spec. enhancements support for Linux/Intel and 64 bit platforms JCA exploitation of LINKable 3270 Bridge in CICS TS 2.2 easier programming for ECI returned data > 32K good integration with IBM tools offerings enhanced manageability via JMX (Java Management eXtensions)
As an alternative, customers may wish to consider using IIOP with CICS TS V2.2 and later releases: must have CICS TS 2.2 in production must have implemented Java and EJB under CICS must have existing apps in LINKable form (COMMAREA or Bridge) 25
CICS and the Web Jan 21 Webcast Presentation.PRZ
Additional information Other sources of planning information: SG24-5243 CICS Transaction Server for OS/390: Web Interface and 3270 Bridge SG24-5275 Java Application Development for CICS SG24-5277 Revealed! CICS Transaction Gateway with more CICS Clients Unmasked SG24-5466 Revealed! Architecting Web Access to CICS SG24-5748 A Performance Study of Web Enabling CICS SG24-5756 Securing Web Access to CICS SG24-6118 Workload Managing Access to CICS SG24-6133 CICS Transaction Gateway V5: The WebSphere Connector for CICS SG24-6401 Java Connectors for CICS Featuring the J2EE Connector Architecture REDP0206 From code to deployment: Connecting to CICS from WebSphere V4.01 for zOS SR23-9720-00 Java for S/390® and AS/400® Cobol Programmers Designing & Programming CICS Applications, O'Reilly ISBN 1-56592-676-5 http://www.ibm.com/cics/ http://www.redbooks.ibm.com/
26
CICS and the Web Jan 21 Webcast Presentation.PRZ
Thank you for joining us today! If you would take a few moments to fill out the feedback form which will display when you close out of this session, it would be greatly appreciated. Your comments are very important to us. If you have questions regarding the topics we have covered in this webcast today, you may submit them via the email hotlinks below:
Dr Geoff Sharman, Senior Consultant, Transaction Systems Lead Strategist, CICS Portfolio
[email protected]
27
CICS and the Web Jan 21 Webcast Presentation.PRZ