mark endrei - ibm · ibm websphere application server v5.0 ibm websphere mq 5.3 message-driven bean...

55
IBM IT Education Services July 20-25, 2003 | Las Vegas, NV © 2003 IBM Corporation WebSphere Technical Exchange Patterns: Self-Service Application Solutions Using WebSphere V5.0 W06 Mark Endrei

Upload: others

Post on 17-Aug-2020

8 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

IBM IT Education Services

July 20-25, 2003 | Las Vegas, NV © 2003 IBM Corporation

WebSphere Technical Exchange

Patterns: Self-Service Application Solutions Using WebSphere V5.0

W06Mark Endrei

Page 2: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

2

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

Agenda

Patterns for e-businessSelf-Service patternsRuntime patternsProduct mappingsTechnology optionsGuidelinesPatterns Development KitMore information

Page 3: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

3

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

Patterns for e-business

ObjectivesTo provide the smallest number of Patterns for e-business, which will allow IT architects in 80% of cases to quickly develop 80% of their required infrastructure by the re-use of proven:

– Architecture patterns– Design patterns– Runtime patterns– Design, development and deployment guidelines– Sample code

To provide IBM software (and hardware) development architects with a finite number of well-defined requirements, which they can use to optimize their product components

Page 4: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

4

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

The Patterns layered asset model

Best-Practice GuidelinesTechnology ChoicesApplication DesignApplication DevelopmentSystem ManagementSamples

Application patterns

Product mappings

Runtime patterns

Composite patterns

Integration patternsBusiness patterns

Customerrequirements

Any methodology

Page 5: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

5

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

Business patternsBusiness patterns are the basic building blocks for solutions

ExtendedEnterprise

pattern

InformationAggregation

pattern

Collaborationpattern

Self-Servicepattern

Businesspatterns

Users accessing data (including business txns) on a 24x7 basis

Users working with one another to share data and information

Data from multiple sources aggregated and distilled

Integrating data and processes across enterprise boundaries

Page 6: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

6

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

Integration patternsIntegration patterns provide the glue to combine Business patterns to form solutions

ApplicationIntegration

pattern

AccessIntegration

pattern

Integrationpatterns

Provide seamless and consistent access to business functions

Connect, interface or integrate databases and systems

Page 7: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

7

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

Online brokerageBusiness patternsIntegration patterns

Inte

rnet

Browser

Wireless

SpecializedDevices

ElectronicBrokerage

Markets

ContentAggregator

ContentProviders

EnterpriseSystems

ContentSyndicators

Trades

Transactions

IndustryContent

IndustryContent

AggregatedContent

PersonalizationData

DeviceSpecificFormats

Notes MailCalendarDirectory

Customer

CustomerPreferences

DeviceTranscoding

Data

IntegratedContent

Portal

Information Aggregation

Self-Service

ExtendedEnterprise

AccessIntegration

ApplicationIntegration

Page 8: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

8

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

Agenda

Patterns for e-businessSelf-Service patternsRuntime patternsProduct mappingsTechnology optionsGuidelinesPatterns Development KitMore information

Page 9: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

9

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

Self-Service business pattern

Allows internal and external users to interact with enterprise systemsand databases

Some examples of Self-Service applicationsAn insurance company makes policy information available to usersand allows them to apply for a policy onlineA bank allows customers to access their accounts and pay bills onlineA company allows its employees to change their medical plan, taxinformation, etc., online without having to call the HR office

EnterpriseSystems andDatabases

Users

Page 10: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

10

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

Self-Service application patterns

Application patterns define the application logic and data componentsand how they interact

There are currently seven Self-Service application patterns defined

1. Stand-alone Single Channel

Self-Service

2. Directly Integrated Single Channel

3. As-is Host

4. Customized Presentation to Host

5. Router

6. Decomposition

7. Agent

Page 11: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

11

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

Self-Service application patterns

6.

7.

CRM LOB

synch/asynch

synch/asynch Agent

Decompsynch synch/

asynch

1. Presentationsynch

Application

2.synch synch/

asynch Presentation Web

Application Back-endApplication

Back-endApplication

3.synch Host

Application

Pres.synch

4.Host

Application

5. synchRoutersynch

Back-endApplication

Back-endApplication

Presentation1

Presentation2

Back-endApplication

Back-endApplication

Back-endApplication

Back-endApplication

Application node containing new or modified components

Application node containing existing components with no need for modification or which cannot be changed

Read / Write data

Read-only data

Transient data- Work in progress- Cached committed data- Staged data (data replication flow)

Presentation1

Presentation2

Presentation1

Presentation2

Page 12: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

12

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

Self-Service application patterns

Business and IT drivers

Page 13: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

13

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

Stand-alone Single Channel application pattern

Business applications not currently needing integration with otherapplications

One delivery channel Presentation tier handles user interfaceWeb application tier

– Local application dataBusiness logic resides in Web application tierSynchronous between presentation tier and Web application tier

synchPresentation WebApplication

Page 14: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

14

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

Back-endApplication

Directly Integrated Single Channel application pattern

Point-to-point connectivity between the user and new or existingback-end applications

One delivery channel Presentation tier handles user interfaceWeb application tier

– Local application data; Accesses one or more back-end applicationsBack-end applications

– Existing business logic and back-end dataBusiness logic can reside in Web application tier and back-end tierSynchronous between presentation tier and Web application tierSynch/asynch between application tier and the back-end

synch synch/asynchPresentation Web

ApplicationBack-end

Application

Page 15: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

15

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

Agenda

Patterns for e-businessSelf-Service patternsRuntime patternsProduct mappingsTechnology optionsGuidelinesPatterns Development KitMore information

Page 16: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

16

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

Runtime patterns

The logical middleware structure that underpins the Application patternNodes group functional requirementsNodes interconnected to solve business problem

Stand-aloneSingle Channel

application pattern

Directly Integrated Single Channel

application pattern

Basic Runtime pattern

Runtime pattern: Variation 1

Runtime pattern: Other variations

Basic Runtime pattern

Runtime pattern: Variation 1

Runtime pattern: Other variations

Self-Service business pattern

Page 17: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

17

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

Stand-alone Single Channel::Runtime patternInternal Network

Demilitarized Zone (DMZ)Outside World

Prot

ocol

Fire

wal

l

Database

Dom

ain

Fire

wal

lINTERNET

Public Key Infrastructure

User

Web Application

Server

Domain Name Server

Directory and SecurityServices

Presentation Application

Stand-Alone Single Channel application

Page 18: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

18

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

Runtime pattern: Variation 1Internal Network

Demilitarized Zone (DMZ)Outside World

Prot

ocol

Fire

wal

l

Dom

ain

Fire

wal

lINTERNET

Public Key Infrastructure

User

Web Server

Redirector

Domain Name Server

Presentation Application

Stand-Alone Single Channel application

Database

ApplicationServer

Directory and SecurityServices

Page 19: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

19

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

Directly Integrated Single Channel::Runtime patternInternal Network

Demilitarized Zone (DMZ)Outside World

Prot

ocol

Fire

wal

l

Existing Applications

and Data

Dom

ain

Fire

wal

lINTERNET

Public Key Infrastructure

User

Web Application

Server

Domain Name Server

Directory and SecurityServices

Presentation Application Application

Directly Integrated Single Channel application

Application

Existing Applications

and Data

Page 20: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

20

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

Runtime pattern: Variation 1Internal Network

Demilitarized Zone (DMZ)Outside World

Prot

ocol

Fire

wal

l

Dom

ain

Fire

wal

lINTERNET

Public Key Infrastructure

User

WebServer

Redirector

Domain Name Server

Presentation Application Application

Directly Integrated Single Channel application

Application

Existing Applications

and Data

ApplicationServer

Directory and SecurityServices

Existing Applications

and Data

Page 21: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

21

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

Runtime pattern: Other variations

Non-Functional Requirements::High Availability: Runtimepatterns

Basic Runtime pattern Runtime pattern: Single load balancerRuntime pattern: Load balancer hot standbyRuntime pattern: Mutual high availabilityRuntime pattern: Wide area load balancing

Non-Functional Requirements::High Performance: Runtimepatterns

Basic Runtime pattern Runtime pattern: RedirectorsRuntime pattern: SeparationRuntime pattern: Caching proxy

Page 22: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

22

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

Agenda

Patterns for e-businessSelf-Service patternsRuntime patternsProduct mappingsTechnology optionsGuidelinesPatterns Development KitMore information

Page 23: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

23

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

Product mappings

Determining what products and platforms to useExisting systems and platform investmentsCustomer and developer skills availableCustomer choice

IBM WebSphere Application Server V5.0 onWindowsAIXLinuxOS/400 and z/OS coming soon

Integration optionsWeb servicesJ2EE Connectors and CICSJava Message Service and WebSphere MQ V5.3

Page 24: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

24

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

Stand-alone Single Channel::Windows Product mapping

Internal networkDemilitarized zone

Out

side

wor

ld

Prot

ocol

Fire

wal

l

Dom

ain

Fire

wal

l

Web ServerRedirector

Directory and SecurityServices

LDAP

Application Server

Database

Windows 2000 + SP3IBM DB2 UDB ESE V8.1

Windows 2000 + SP3IBM SecureWay Directory V3.2.1IBM HTTP Server 1.3.19.1IBM GSKit 5.0.3IBM DB2 UDB EE V7.2 + FP5

Windows 2000 + SP3IBM WebSphere Application Server V5.0 HTTP Plug-inIBM HTTP Server 1.3.26

Windows 2000 + SP3IBM WebSphere Application Server V5.0

Page 25: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

25

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

Directly Integrated Single Channel::Windows Product mapping

Internal networkDemilitarized zone

Out

side

wor

ld

Prot

ocol

Fire

wal

l

Dom

ain

Fire

wal

l

Web ServerRedirector

Windows 2000 + SP3IBM WebSphere Application Server V5.0 HTTP Plug-inIBM HTTP Server 1.3.26

Directory and SecurityServices

LDAP

Application Server

Windows 2000 + SP3IBM SecureWay Directory V3.2.1IBM HTTP Server 1.3.19.1IBM GSKit 5.0.3IBM DB2 UDB EE V7.2 + FP5

Database

Existing Applications

and Data

Windows 2000 + SP3IBM DB2 UDB ESE V8.1

JMS Option:Windows 2000 + SP3IBM WebSphere Application Server V5.0IBM WebSphere MQ 5.3Message-driven bean application

Web Services Option:Windows 2000 + SP3IBM WebSphere Application Server V5.0IBM HTTP Server 1.3.26IBM DB2 UDB ESE 8.1Web service EJB application

J2C Option:z/OS Release 1.3IBM CICS Transaction Gateway V5.0IBM CICS Transaction Server V2.2CICS C-application

Windows 2000 + SP3IBM WebSphere Application Server V5.0

JMS Option add:IBM WebSphere MQ 5.3

Page 26: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

26

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

Stand-alone Single Channel::Linux Product mapping

Internal networkDemilitarized zone

Out

side

wor

ld

Prot

ocol

Fire

wal

l

Dom

ain

Fire

wal

l

Web ServerRedirector

Directory and SecurityServices

LDAP

Application Server

Database

Red Hat Linux AS 2.1IBM DB2 UDB ESE V8.1

Windows 2000 + SP3IBM SecureWay Directory V3.2.1IBM HTTP Server 1.3.19.1IBM GSKit 5.0.3IBM DB2 UDB EE V7.2 + FP5

Red Hat Linux AS 2.1IBM WebSphere Application Server V5.0 HTTP Plug-inIBM HTTP Server 1.3.26

Red Hat Linux AS 2.1IBM WebSphere Application Server V5.0

Page 27: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

27

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

Directly Integrated Single Channel::Linux Product mapping

Internal networkDemilitarized zone

Out

side

wor

ld

Prot

ocol

Fire

wal

l

Dom

ain

Fire

wal

l

Web ServerRedirector

Red Hat Linux AS 2.1IBM WebSphere Application Server V5.0 HTTP Plug-inIBM HTTP Server 1.3.26

Directory and SecurityServices

LDAP

Application Server

Windows 2000 + SP3IBM SecureWay Directory V3.2.1IBM HTTP Server 1.3.19.1IBM GSKit 5.0.3IBM DB2 UDB EE V7.2 + FP5

Database

Existing Applications

and Data

Red Hat Linux AS 2.1IBM DB2 UDB ESE V8.1

JMS Option:Red Hat Linux AS 2.1IBM WebSphere Application Server V5.0IBM WebSphere MQ 5.3Message-driven bean application

Web Services Option:Red Hat Linux AS 2.1IBM WebSphere Application Server V5.0IBM HTTP Server 1.3.26IBM DB2 UDB ESE 8.1Web service EJB application

J2C Option:z/OS Release 1.3IBM CICS Transaction Gateway V5.0IBM CICS Transaction Server V2.2CICS C-application

Red Hat Linux AS 2.1IBM WebSphere Application Server V5.0

JMS Option add:IBM WebSphere MQ 5.3

Page 28: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

28

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

Agenda

Patterns for e-businessSelf-Service patternsRuntime patternsProduct mappingsTechnology optionsGuidelinesPatterns Development KitMore information

Page 29: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

29

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

Web services

What are Web services?Web services are self-contained, self-describing, modular applicationsWeb services combine two ubiquitous technologies

–XML, the universal data description language–HTTP, widely supported by browsers and Web servers

Web services can be published,located, and invoked across theWeb using

SOAP, an XML-based RPC andmessaging protocolWSDL, a descriptive interface andprotocol binding languageUDDI, a registry mechanism used tolocate Web service descriptions

Publish

WSDL, UDDI

Find

WSDL,

UDDI

Bind/Invoke

SOAP

ServiceBroker

ServiceRequester

ServiceProvider

Page 30: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

30

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

Web services - continued

Advantages of Web servicesProtect investments in legacy systems by using Web services to wrap these systems for integration with modern systemsWeb services are platform neutral so they can be invoked by non-Java clientsWeb services can be dynamically "discovered" and thus are "visible" to the entire Internet/intranet community

Disadvantages of Web servicesAdding the Web services provider stack to existing enterprise systems can be a problem

– SOAP server footprint is significant; Technology is relatively newBinding to Web services dynamically requires that the contents of the registry be trusted

– Currently, only private registries provide such control over contents

Page 31: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

31

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

J2EE Connector

What is the J2EE Connector Architecture?Provides a standard way of accessing enterprise systems from J2EE applicationsDefines the common client interface (CCI) APIThe link from the API to the EIS is called a resource adapter and is provided by a third-party vendorAdapters are packagedas resource adapterarchive (RAR) filesJ2C 1.0 support is arequirement of theJ2EE 1.3 specificationIt is similar to the modelfor JDBC drivers

EIS-Specific Interface

Common Client Interface

Container-Component

Contract

J2EEApplication Server Application

Component

Connection Pooling

Transaction Manager

Security Manager

Resource Adapter

Enterprise Information

System

System LevelContracts

Transaction ManagementConnection ManagementSecurity Management

Page 32: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

32

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

J2EE Connector - continued

Advantages of J2EE ConnectorsThe CCI simplifies application integration with diverse EISs

– Easily plug third-party or home-grown adapters into your applicationsAn EIS adapter implementation can be used by all client applicationsJ2EE connectors facilitate scalability and provide quality of service features transparently to the client applicationJ2C-compliant adapters are portable across J2EE application serversJ2C has low intrusion on the enterprise system, as native clientinterfaces are utilized

Disadvantages of J2EE ConnectorsJ2C only supports synchronous communication. Asynchronous support is expected in the J2C 1.5 or 2.0 specificationWith J2C 1.0, parts of the CCI are resource adapter specific. If you change the resource adapter the client application will be impacted

Page 33: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

33

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

Java Message Service

What is Java Message Service?The JMS API enables a Java programmer to access message-oriented middleware from the Java programming modelJMS has two messaging styles

– Point-to-point– Publish/subscribe

Communications are asynchronous– Clients can receive messages

without making a request– Clients can send messages without

waiting for a replyCommunications are loosely coupled

– The sender and receiver do not haveto be active or aware of each other

JMS is only a specification– Each enterprise messaging system vendor must provide classes that

implement the specification for their specific messaging system

Lookup

Connect

BindAdmin tool

JNDInamespace

JMS Client JMS Provider

CF D

Page 34: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

34

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

Java Message Service - continued

Advantages of JMSIt is the first enterprise messaging API that has achieved wide cross-industry supportIt leverages existing, enterprise-proven messaging systemsIt simplifies development of enterprise applications by providing standard messaging concepts and conventionsA common interface for accessing diverse messaging systemsExtend existing message-based applications by adding new JMS clients that are integrated fully with existing non-JMS clients

Disadvantages of JMSThe common interface may not support all the functionality offered by the messaging vendor

– You might have to write vendor-specific code to access such functionality

Page 35: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

35

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

XML messaging

XML can be used to specify the content of messages between servers,within an enterprise or for business-to-business connectionsAdvantages of XML

Industry standard for data interchangeCross-platform tool supportHuman readable

Disadvantages of XMLComplexity, large size, standardization

DTD or XML Schema can be used to define/validate XML documentsDisadvantages of DTD

Poor typing, not defined as XMLAdvantages of XML Schema

Strong typing for elements and attributes, null valuesDefined as XML, making them programmatically accessible

Page 36: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

36

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

Integration technology selection guidelines

The current infrastructure and skillsDo you have a messaging system on the enterprise tier?

– Then JMS makes senseDo you have an EIS system, such as CICS or IMS?

– J2C might be the better choiceInfrastructure and skills flexible/developing?

– Web services can help

Time to marketWeb service enabling an application can be relatively fast with the Web services development tools available

Page 37: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

37

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

Integration technology selection guidelines - continued

Future expansion plansDo you need to integrate with existing infrastructure and with planned infrastructure?

– Web services can provide a low-dependency and low-cost migration path in such a case

ReliabilityJMS and WebSphere MQ can provide assured transfer of data, even when the enterprise application is unavailable

Transaction supportWeb services currently do not offer support for transactions

– If your application needs transactional management, it might be worthwhile considering either JMS or J2EE Connectors

Page 38: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

38

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

Agenda

Patterns for e-businessSelf-Service patternsRuntime patternsProduct mappingsTechnology optionsGuidelinesPatterns Development KitMore information

Page 39: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

39

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

Guidelines - Development and runtime environment

IBM WebSphere Studio Application Developer V5.0 base editionIntegrated J2EE application development and test environmentVisual editors and wizards for working with J2EE applications, modules, EJBs, servlets, JSPs, XML, etc.Web services wizards for generating providers and clients

IBM WebSphere Application Server V5.0 base editionAs per Runtime patterns

IBM WebSphere MQ V5.3As per Runtime patterns

IBM CICS Transaction Server and Transaction GatewayAs per Runtime patternsECI and EPI J2C adapters with the IBM CICS Transaction Gateway

Page 40: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

40

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

Guidelines - Web application frameworks

True to the MVC design pattern, Struts applications have threemajor components

Controller - Struts ActionServlet and Action classView - Struts form beans and JavaServer PagesModel - application's business logic

Struts helps developersMap HTTP parameters to JavaBeansValidate that a form is filled in correctlyProvide standard error responsesMessage internationalizationAvoid hard coding links to JSPs

Like all frameworks, Struts has disadvantagesCustomization may be difficult, but can also prevent bad practicesLearning curve

Action

ActionForm

ActionServlet TransferFundsAction

TransferFundsForm

Business Logic«instantiate» «use»

Page 41: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

41

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

Web services - Guidelines

Web service provider and requester application structure

SOAP Request

SOAP Reply

PDK Application Server

PDKLite EJB Module

Exchange Rate EJB

Enterprise Application Server

Exchange Rate Server

SOAP Server

Web Services

Proxy

Page 42: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

42

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

Guidelines - Web services

Static vs. dynamic discovery

There are two ways of binding to a Web service

Static service– Service definition is obtained

through a proprietary channel(an e-mail, for example)and stored locally

Dynamic discovery– Service definition is obtained

from a trusted UDDI registry– Client application searches

the registry at runtime

Service Requester

Static Service

SOAP Listener

Service Provider

Service Requester

Dynamic Discovery

SOAP Listener

Service Provider

Service Registry

Page 43: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

43

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

Guidelines - J2EE Connectors and CICS

Local vs remote CICS Transaction Gateway (TG)

Local CICS TG onapplication server tier

Remote CICS TG onz/OS enterprise tier

Remote CICS TG on z/OS recommended in most situations– CICS client-interface components are provided by z/OS enterprise tier– The CICS TG on zSeries can be shared by multiple client applications– Availability of the CICS client-interface depends only on enterprise tier– Standard tools and procedures can be used at the enterprise tier– CICS resources and skills can remain focused on z/OS

z/OS UNIX Service

CICS Transaction

Server

OS/390 or z/OSOS/390 or z/OSWindows/AIX/LinuxWindows/AIX/Linux

WebSphere Application Server

EJBCICS ECI Resource Adapter

CICSProgram

(CALCRATE)

CICS Transaction

Gateway

Page 44: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

44

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

Guidelines - JMS and WebSphere MQ

Local vs remote queue managers

Connecting to the local queuemanager has several majoradvantages

– Higher probability of connecting to alocal queue manager than a remotequeue manager

– The time it takes to establish anetwork connection to the queuemanager is avoided

– The local queue manager candistribute the work among multiplebrokers

Application ServerApplication Server

Application

Broker1Broker1

Queue ManagerQueue Manager

Queue Manager

Application ServerApplication Server

Application

Broker2Broker2

Queue ManagerQueue Manager

Broker1Broker1

Queue ManagerQueue Manager

Broker2Broker2

Queue ManagerQueue Manager

Page 45: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

45

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

Guidelines - XML messages

Use descriptive tag and attribute namesGroup elements in related setsSeparate metadata from the real content

– Use Header and Body elements for exampleInclude a message version number in the message metadata

Page 46: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

46

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

XML development

WebSphere Studio Application Developer V5.0XML EditorDTD / XML Schema generatorJavaBeans generator

Page 47: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

47

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

Class diagram for XML message

ExchangeRateRequest

+ ExchangeRateRequest ( )+ ExchangeRateRequest ( )+ getSourceName ( )+ setSourceName ( )+ getVersion ( )+ setVersion ( )+ getCreateDate ( )+ setCreateDate ( )+ getPlanet ( )+ setPlanet ( )

Message

+ Message ( )+ Message ( )# setElement ( )# getElement ( )+ toString ( )

DOMWriter

MessageResolver

+ resolveEntity ( )

DOMParser

DocumentBuilder

DocumentBuilderFactory

«JavaInterface»Document

Page 48: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

48

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

: ExchangeRateReply

: ExchangeRateRequest

: ExchangeRateServ erBean

: RPC RouterServ let

: ExchangeRateServ erProxy

: ExchangeRateWSBean

: ExchangeRateBean

: F inanceBean

1 : getExchangeRate ( planet )

2 : getExchangeRate ( planet )

3 : setEndPoint ( url )

6 : getExchangeRateXML ( reqMsg )

4 : ExchangeRateRequest ( msgSource , msgPlanet )

5 : toString ( )

7 : \SO A P Request\

8 : getExchangeRateXML ( reqMsg )

9 : ExchangeRateReply ( msg )

10 : getRate ( )

Sequence diagram for Web services requester and provider

Page 49: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

49

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

Source code for invoking Web service

Page 50: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

50

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

Agenda

Patterns for e-businessSelf-Service patternsRuntime patternsProduct mappingsTechnology optionsGuidelinesPatterns Development KitMore information

Page 51: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

51

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

PatternsDevelopment Kit

Page 52: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

52

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

PDK architecture overview

HTTPRequests

PDK CommandServer

Application

PDKApplication

V3

Web ServicesRequester

J2CResourceAdapter

JMSProvider

Web ServicesProvider

CICSBackend

MQBackend

PDK

E

X

T

E

N

S

I

O

N

Page 53: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

53

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

Agenda

Patterns for e-businessSelf-Service patternsRuntime patternsProduct mappingsTechnology optionsGuidelinesPatterns Development KitMore information

Page 54: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

54

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

More information

This presentation isbased on redbookSG24-6591

ITSO Patternsresidencies

E-mail:[email protected]

Page 55: Mark Endrei - IBM · IBM WebSphere Application Server V5.0 IBM WebSphere MQ 5.3 Message-driven bean application Web Services Option: Windows 2000 + SP3 IBM WebSphere Application Server

55

IBM IT Education Services

July 20-25, 2003 | Las Vegas,NV © 2003 IBM Corporation

More information

Books– Patterns for e-business:

A Strategy for Reuseby Jonathan Adams, Srinivas Koushik,Guru Vasudeva, George GalambosPublished by IBM PressISBN: 1-931182-02-7

Web sites– ibm.com/developerWorks/patterns– ibm.com/redbooks