IMS SOA Solutions - IMS UG September 2012 Omaha

25
© 2012 IBM Corporation IMS SOA Solutions Richard Tran [email protected]

description

 

Transcript of IMS SOA Solutions - IMS UG September 2012 Omaha

Page 1: IMS SOA Solutions - IMS UG September 2012 Omaha

© 2012 IBM Corporation

IMS SOA SolutionsRichard [email protected]

Page 2: IMS SOA Solutions - IMS UG September 2012 Omaha

© 2012 IBM Corporation

IMS Modernization Solutions

Java

IMS

z/OS

TCP/IP

WebSphereTM/DB access

DataPower

IMS SOAPGateway

TM access

Universal JDBCdriver

DB access

Universal DLIdriver Catalog

IMS access anywhereStandards-based data server and TMOpen systems accessWeb services

TCP/IP

WebSphereTM/DB access

DataPower

IMS SOAPGateway

TM access

Universal JDBCdriver

DB access

Universal DLIdriver

TCP/IP

WebSphereTM/DB access

IMS TM and DBResourceAdapters

DataPower

IMS SOAPGateway

TM access

Universal JDBCdriver

DB access

Universal DLIdriver

Java API

TM AccessRYO

C API

Java API

TM AccessRYO

C API

Java API

TM AccessRYO

C API

Page 3: IMS SOA Solutions - IMS UG September 2012 Omaha

© 2012 IBM Corporation

IMS TM Modernization

� SOA TM Connectivity

– IMS as a SOA provider and consumer

– Inbound and Outbound from IMS applications

– SOAP, Java, HTTP, TCP/IP

Page 4: IMS SOA Solutions - IMS UG September 2012 Omaha

© 2012 IBM Corporation

Modernizing IMS Applications and Data with IMS SOA solutions

� Bring IMS to SOA at no additional cost

– Enable IMS as both provider and consumer

– Access IMS transaction and data from remote platforms

– Allow IMS applications to callout to remote applications

� Leverage on standards and use modern programming languages

– SOAP, HTTP(S), XML, WS-*, Java EE/JCA

� Improve integration and lower operating costs

– Through Host MIPS/CPU reductions and reuse resources

� Ease IMS application development with Rational tooling

– Lower skills and increase application development productivity

Page 5: IMS SOA Solutions - IMS UG September 2012 Omaha

© 2012 IBM Corporation

Open access to IMS transaction

(Calling into IMS)

Page 6: IMS SOA Solutions - IMS UG September 2012 Omaha

© 2012 IBM Corporation

Inbound connectivity to IMS TM

IMS Connect

OTMA

IMS DB &

XML DB

IMS

IMS App

WebSphere Servers

WAS, IPS, WESB, WTX

IMS SOAP

Gateway

WebSphere

DataPower

Connect API

(Java, C)

MQMQ Client

RYO Client

Web

ServiceConsumer

IMS TM Resource

Adapter (TM RA)

WAS – WebSphere Application ServerIPS – IBM Process ServerWESB – WebSphere Enterprise Service BusWTX – WebSphere Transformation ExtenderWMB – WebSphere Message Broker

WOLA – WebSphere z/OS Optimized Local Adapters

WebSphere sMashWeb 2.0

Client

DB2

WOLA

WAS z/OS

WMB

TM RA

MQ

Page 7: IMS SOA Solutions - IMS UG September 2012 Omaha

© 2012 IBM Corporation

WebSphere and IMS TM Resource Adapter

Java EE application server

IMS TMIMS TM

resourceresource

adapteradapter

WebService

TCP/IP

WebComponent

EnterpriseBean

IMS

Connect

IMS DB *

IMS

IMS App

� Access IMS transaction with full Java EE and SOA support

• Java EE Connector Architecture (JCA/J2C) compliant

• Integrate with a variety of Java EE or WebSphere-based servers with built-in QoS support (2PC, connection pooling, security management)

• Supports both call-in and callout from IMS

• Recommended when Java EE server (e.g. WAS) is already in-use

• Supports rapid application development with Rational tooling

Rational Application

Developer (RAD) or

WebSphere Integration

Developer (WID)

IMS app

Source

(COBOL, PLI,

C, MFS)

Generates

* Binary, text or XML data

OTMA

Page 8: IMS SOA Solutions - IMS UG September 2012 Omaha

© 2012 IBM Corporation

IMS TM Resource Adapter

� Recent key enhancements

– Support non-IBM Java EE server (e.g. Weblogic, JBOSS) and

WebSphere Application Server Community Edition

– Callout enhancements

• Retrieve callout messages from more than one IMS data stores with a

single message-driven bean (MDB)

• Auto reconnect for both IMS data store and IMS Connect connection

failures

Page 9: IMS SOA Solutions - IMS UG September 2012 Omaha

© 2012 IBM Corporation

Web services

(.NET, SAP, etc.)

IMS Enterprise

Suite SOAP Gateway

IMS Enterprise

Suite SOAP Gateway

HTTP / SOAP TCP/IP / XML

Windows/zLinux/zOS

SOAP Envelopewith XML message XML message

� Light-weight SOAP server

� Supports industry web service standards

• HTTP(S), SSL, SOAP 1.1, WSDL 1.1, WS-I BP 1.0, WS-Security

� Enable IMS transactions as both web service providers and consumers

� Run on z/OS, zLinux, Windows

A component of the

IMS Enterprise SuiteIMS Enterprise Suite SOAP Gateway

IMS

Connect

IMS DB *

IMS

IMS App

OTMA

Page 10: IMS SOA Solutions - IMS UG September 2012 Omaha

© 2012 IBM Corporation

IMS Enterprise Suite SOAP Gateway

� Recent key enhancements

– Simplified installation with SMP on z/OS and IM (IBM Installation

Manager) on distributed platforms

– Top-Down PL/I Provider support

– Enhanced Management Utility with task automation

– Major security enhancements: AT-TLS, Custom Authentication

Module, SAML 1.1 Unsigned/Signed, SAML 2.0 Unsigned

– Significant performance improvement

Page 11: IMS SOA Solutions - IMS UG September 2012 Omaha

© 2012 IBM Corporation

Top-down, WSDL-first application development

� Develop new IMS applications starting from a Web Services Description Language (WSDL) file

� Generate traditional programming language data constructs from WSDL or complex XML documents

� Top-down for IMS PL/I inbound request (available today)

– Rational Developer for System z (RDz) 8.0.3

– Support top-down development scenario

– Generate PL/I IMS application template, language structures and XML input/output converters

� Intended support for PL/I Outbound and COBOL Inbound/Outbound

Page 12: IMS SOA Solutions - IMS UG September 2012 Omaha

© 2012 IBM Corporation

SOAP Gateway Intended support

� Advanced installation

– Consistent installation story using IBM Installation Manager (IM) on all supported platforms

– Make the post-SMP installation process flexible using IM on z/OS

� End-to-end transaction tracking and monitoring

– Provide server “Health Check” functionality to monitor JVM, connection resources, traffic, etc

– Provide transaction tracking to pass unique message ID from client to IMS

� WS-Security

– Inbound with SAML 2.0 (signed), Outbound with SAML 1.1, 2.0 (unsigned)

� Enhanced server shutdown options

– Immediate or Graceful (process all in-flight messages and come down gracefully)

Page 13: IMS SOA Solutions - IMS UG September 2012 Omaha

© 2012 IBM Corporation

IMS Connect API

� Provides simplified API to build User-written IMS Connect client application to invoke IMS transactions from Java and C environments

� Shields users from IMS Connect protocol (IRM, CSM, RSM, etc.) and low-level socket communications

� Recommend to use in RYO client application that does not run in an application server

� Value

– Extends the value of IMS resources by allowing easy access from new Java or C-based applications

– Simplifies migration of existing applications from SNA to TCP/IP

– Simplifies development of new applications to access IMS transactions

Page 14: IMS SOA Solutions - IMS UG September 2012 Omaha

© 2012 IBM Corporation

Connect API Flow Diagram

Figure 1: Communication is made easier by IMS Enterprise Suite Connect API

Page 15: IMS SOA Solutions - IMS UG September 2012 Omaha

© 2012 IBM Corporation

Sample Connect API Java application

// Create connection

ConnectionFactory myCF = new ConnectionFactory();

myCF.setHostName(myConnectHost);

myCF.setPortNumber(myConnectPort);

myCF.setClientId(myClientId);

Connection myConn = myCF.getConnection();

myConn.connect(); // not required with Java API

// Create Interaction

myTmInteraction = myConn.createInteraction();

myTmInteraction.setImsDatastoreName(“IMS1”);

myTmInteraction.setTrancode(“XXXX ");

myTmInteraction.setInteractionTypeDescription(

ApiProperties.INTERACTION_TYPE_DESC_SENDRECV);

// Set input, execute, get output

InputMessage inMsg = myTmInteraction.getInputMessage();

byte[] inputData = new String(“Hello”).getBytes();

inMsg.setInputMessageData(inputData);

myTmInteraction.execute();

OutputMessage outMsg = myTmInteraction.getOutputMessage();

String outDataString = outMsg.getDataAsString();

Page 16: IMS SOA Solutions - IMS UG September 2012 Omaha

© 2012 IBM Corporation

IMS accessing external applications

(Calling out from IMS)

Page 17: IMS SOA Solutions - IMS UG September 2012 Omaha

© 2012 IBM Corporation

Outbound Connectivity from IMS TM

IMS Connect

OTMA

IMS DB &

XML DB

IMS

IMS App

IMS TM

Resource

Adapter

WebSphere e.g. WAS

IMS SOAP

Gateway

MQMQ Server

RYO Server

Web

Service

Provider

Event

Processing

WBE, WBM

WAS – WebSphere Application ServerWBE – WebSphere Business EventsWBM – WebSphere Business Monitor

RYO Server - .Net, BizTalk, Oracle SP, SAP, PayPal services, and any application server, etc.

DB2

WOLA - WebSphere z/OS Optimized Local Adapters

WOLA

WAS z/OS

Connect API

(Java)

Page 18: IMS SOA Solutions - IMS UG September 2012 Omaha

© 2012 IBM Corporation

IMS Callout

� Enable IMS applications as clients or Web Service requesters

– Interoperate with business logic outside the IMS environment

– Callout to Java EE apps and Web Services using WebSphere Application Server and IMS TM Resource Adapter

– Callout to Web services providers (e.g. Microsoft .NET) using SOAP Gateway

– IMS Connect API (Java) supports Callout for RYO applications

� IMS 10: Asynchronous Callout

– IMS application invokes external applications without waiting for response Response can be received by another IMS application

� IMS 10 SPE: Synchronous Callout

– IMS application invokes external application and synchronously waits for the

response – new DL/I call ICAL

� IMS 11: Dynamic Change for OTMA Descriptors

– Can roll out new application changes without an IMS outage

Page 19: IMS SOA Solutions - IMS UG September 2012 Omaha

© 2012 IBM Corporation

Customers using Callout

� Customer: A insurance company in Europe

– Callout to SAP application package running in WAS on distributed platform

– MDB to retrieve IMS callout requests from IMS datastores

� Customer: Very large Banking and Financial corporation in Europe

– IMS applications remain to be strategic core banking system on z/OS

– Want to modernize their IMS-based core banking system using SOA

– Strong standardization, and slim middleware

– Planning to use IMS SOAP Gateway for both inbound and outbound requests, with Rational Developer for System z as the development tooling

� Customer: A banking company in Europe

– IMS application callout to JBOSS on distributed platform

� Customer: An insurance company in Europe

– IMS application callout to Weblogic on distributed platform

– POC shows >400 ICALs per second

Page 20: IMS SOA Solutions - IMS UG September 2012 Omaha

© 2012 IBM Corporation

WebSphere Application ServerIMS Connect IMS

IMS Application

2 ICAL SENDRECV ICODEST1

HELLO FROM IMS

HELLO FROM

WEBSPHERE MDB

TPIPE

ICOPIPE1

Message Driven

Bean (MDB)

Response

1

3

Activate

HELLO FROM IMS

onMessage

HELLO FROM

WEBSPHERE

MDB

IMS

TM

Reso

urc

e A

dap

ter

Example: Synchronous Callout to WAS using IMS TM RA

Initiating Client

ICODEST1ICOTPIPE1HWS1

OTMA Descriptor

HWS1

Web

Service

or EJB

IWAIT

Page 21: IMS SOA Solutions - IMS UG September 2012 Omaha

© 2012 IBM Corporation

Web Service

IMS SOAP Gateway

Response

1

4

IMS Connect

z/OS

IMS

IMS Application

2

Server start

ICAL SENDRECV OTMDEST1

JOHN BANKER 100000

HELLO FROM IMS

Request

HELLO FROM WEB SERVICE

HELLO

FROM WEB

SERVICE

TPIPE

SGPIPE02

HELLO

FROM IMS

HELLO FROM

WEB SERVICE

3

Example: Callout with IMS SOAP Gateway

Initiating Client

OTMDEST1SGPIPE02HWS1HWSXMLA0HELLOD

OTMA Descriptor

HWS1

XML

Adapter

XML

Converter

Correlator

Page 22: IMS SOA Solutions - IMS UG September 2012 Omaha

© 2012 IBM Corporation

Recent IMS callout enhancements

� IMS TM resource adapter

– Enable a single message-driven bean (MDB) to pull callout messages from more than one IMS data stores

– Auto reconnect for both IMS data store and IMS Connect connection failures

� Connect API (Java) performance evaluation in progress

– IMS application calling out to a local Java z/OS application shows more than 8000 ICALs per second

� ICAL enhancements

– More precise information for ICAL failures especially for timeout situation

– Enhanced command to also show number of queued RT request

– Enhanced OTMA Log Record Diagnostics

– Improved Resume TPIPE management. Cleaned up unused TPIPE requests

Page 23: IMS SOA Solutions - IMS UG September 2012 Omaha

© 2012 IBM Corporation

IMS TM and Application Server integration

Page 24: IMS SOA Solutions - IMS UG September 2012 Omaha

© 2012 IBM Corporation

IMS TM Connectivity and Integration

WebSphereApplication

Server or Java EE Server**

SOAP Gateway

DatapowerWebSphere

Message Broker

WebSphereEnterprise

Service Bus

IBM Process Server

WebSphereTransformation

Extender

Java EEJava EE

Enterprise Service Bus

BPMBPMWeb ServiceWeb Service

• Full SOA and Java EE Services

• Inbound and Outbound from IMS

• Direct IMS SOAP endpoint for Web Services

• Inbound and Outbound from IMS

• SOA appliances

• Fast Web services and XML transformat-ion

• Inbound to IMS

• Transform complex data types

• Inbound to IMS

Complex Data

Transformation

Complex Data

Transformation

• Business process automation and choreography

• Inbound and Outbound* from IMS

• Java based Enterprise Service Bus

• Inbound and Outbound* from IMS

• Interoperate heterogeneous services and data environments

• Inbound to IMS

� Many IBM application servers already provide built-in support for IMS transaction access today for various environment and needs

*Additional coding may required. **Subset of functions supported with conditional support

Page 25: IMS SOA Solutions - IMS UG September 2012 Omaha

© 2012 IBM Corporation

Premier System z web service enablement through DataPowerSOA appliances

IBM cross-brand initiative

� Deep synergy between DataPower, System z, Rational and Common Transformation tooling to support DataPower as the premier System z gateway for IMS, CICS and DB2

� Support Inbound access to IMS transaction today

� Intended support for IMS DB access

� Intended support for top-down service approach for inbound and outbound IMS transactional requests

XI52

XI50z

DataPower Processing Flow

Protocol transformation

WS Monitoring

Native z transports

Transaction distribution

Network-level HA and distribution

RACF-centric security

IMS

CICSDB2