You are on page 1of 22

Integrating WSRR

with
Genoa, May 18th, 2007

WebSphere ESB

Liborio Calcara
Liborio.calcara@primeur.com

1
Topics

• WebSphere ESB and WSRR Architecture Overview


• SOA Architecture Positioning
• Interaction Patterns

• Integration Scenario Overview


• Architecture As Is
Genoa, May 18th, 2007

• Requirements & Objectives


• Architecture To Be
• Scenario setup

• Step by Step Implementation


• Add services to WSRR and console tour
• Create a new Service Integration Point in WESB using WID
• Run Scenario
• Use Cases (General and Gold customer access)
• WSSR and Governance
• WESB Administration and Policy Promotion
• Q&A

2
SOA Reference Architecture Positioning

Service Management
Service Assessment
Service Discovery Service Interaction
Service Configuration Analysis
Service Publishing
Service Validation Business Innovation & Optimization Services
Impact Analysis
Business Modeling Business Monitoring Business Dashboards
Genoa, May 18th, 2007

Interaction Services ServiceServices


Process Selection Information Services
Development

Management
Service Binding

IT Service
Services

Ad hoc composition Service Choreography


Manage Service Master Data Management
User Integration Business Rules
References Information Integration
Device Integration Staff Data Management

Build
Interoperability Mediation ESB Registry/Repository
Security

Deployment Policy
Partner Services Business App Services Access Services
Asset Partner Management Service Enablement IT
Component Monitoring
Mgmt. Protocol Data Object Discovery
Document Handling Edge Event Capture

Infrastructure Services
Workload Management Virtualization High Availability

3
Elements of the basic ESB pattern
Genoa, May 18th, 2007

4
WebSphere ESB and WSRR Overview

• Pre-defined lookup nodes for


• WebSphere Message Broker
• WebSphere Enterprise Service Bus NASDA
DowJones
WSDL Q Meta-Data:
WSDL
Finance Finance Category
0.01 0.03 Cost
... ... ...
Genoa, May 18th, 2007

WSRR
WSRR Metadata
Repository
SRRetrieveITService

Local
Cache

NASDAQ
WSDL
Service
Requestor Invok
e SOAP

Lookup Filte
SOAP r

Map Invok
SOAP DJ
e
WSDL
Message Flow/Mediation

5
WESB Mediation Primitives

• The Message Logger primitive logs a copy of a message to a database for


future retrieval or audit.
• The Database Lookup primitive retrieves values from a database to add
them to a message.
• The Message Filter primitive compares the content of a message to
expressions configured by the developer, and routes the message to the
next mediation primitive based on the result.
Genoa, May 18th, 2007

• The XSL Transformations (XSLT) primitive transforms messages


according to transformations defined by an XSL style sheet.
• The Fail primitive throws an exception and terminates the path through the
mediation flow.
• The Stop primitive silently terminates the path through the mediation flow.
• The Custom Mediation primitive allows the user to implement their own
mediate method using Java. The Custom mediation, like the other
primitives, receives a Service Message Object and returns a Service
Message Object.
• The Endpoint Lookup primitive dynamically routes the messages to
appropriate service endpoints. The primitive searches for service
information in WebSphere Service Registry and Repository.
• The Event Emitter Mediation primitive emits business events from within
a mediation flow, if an event occurs.
• The Message Element Setter primitive can be used to set the contents of
messages. 6
WESB Interaction Patterns

• WESB supports a variety of endpoint protocols and interaction


styles. A few examples of interaction patterns include:

• Request/response: Handles request/response-style


interactions between endpoints.
Genoa, May 18th, 2007

• Request/multi-response: A variant of the above, where more


than one response can be sent.

• Event propagation: Events may be anonymously distributed to


an ESB-managed list of interested parties. Services may be able
to add themselves to the list.

7
WESB Mediation Patterns

• Protocol switch: Enables service requesters to dispatch their messages


using a variety of interaction protocols or APIs, such as SOAP/HTTP, JMS,
and MQ Integrator (MQI).
• Transform: Translates the message payload (content) from the requester's
schema to the provider's schema. May include enveloping, de-enveloping,
or encryption.
• Enrich: Augments the message payload by adding information from
Genoa, May 18th, 2007

external data sources, such as customization parameters defined by the


mediation, or from database queries.
• Route: Changes the route of a message, selecting among service providers
that support the requester's intent. Selection criteria can include message
content and context, as well as the targets' capabilities.
• Distribute: Distributes the message to a set of interested parties and is
usually driven by the subscribers' interest profiles.
• Monitor: Observes messages as they pass through the mediation
unchanged.
• Correlate: Derives complex events from message or event streams.

8
WSRR Integration Points in an SOA
Genoa, May 18th, 2007

9
WebSphere Service Registry & Repository Architecture

User Eclipse External ITCAM rd


Web WPS ESB MB 3 Party UDDI
Interface Plug-in Systems SOA

Events
Generated

Programming
Genoa, May 18th, 2007

Java SOAP Extensions &


Interfaces Integrations

Governance Admin Registry & Repository Events Generated

Transition Create
JMX Retrieve
Validate
Notify Import / Export Update
Impact Analysis Configure Delete
Audit Query Content Models

Lifecycle Access Control Validation

Validators Classifications Notification


RDB

WebSphere Application Server

Operating Platform
10
WebSphere Service Registry & Repository Content

Service Description Entities Service Description Metadata


Physical Documents Properties Relationships Classifications
ƒ WSDL ƒ name ƒ imports ƒUser-defined
ƒ XSD ƒ namespace ƒ includes States
ƒ SCDL ƒ version ƒ predecessor ƒ Created
Genoa, May 18th, 2007

ƒ WS-Policy ƒ description ƒ User-defined ƒ Approved


ƒ XML – User-defined Documents ƒ modifiedDate ƒ Published
ƒ ….. ƒ Operational

Logical derivations ƒUser-defined


Metadata Environments
ƒ Interface ƒ Service applies to ƒ name ƒ derivedFrom ƒ Development
ƒ Operation ƒ Binding ƒ namespace ƒ operations ƒ Test
ƒ Message ƒ Endpoint
all ƒ User-defined ƒ messages ƒ Approval
ƒ Type ƒ ….. entities ƒ metrics ƒ User-defined ƒ Production

ƒ User-defined
Concepts
Concepts ƒ Application
ƒ Process
ƒ User-defined by classification ƒ Capability
ƒ Business Application ƒ User-defined ƒ User-defined
ƒ Business Process ƒ owner ƒ dependantServices ƒStandard Ontologies
ƒ Governed Collection ƒ externalURL ƒ serviceInterface ƒ NAICS
ƒ External reference ƒ governedEntities ƒ UNSPSC
ƒ policies ƒ ISO3166
ƒ …..

11
Integration Scenario Overview

• Architecture As Is
• Requirements & Objectives
• Architecture To Be
• Scenario setup
Genoa, May 18th, 2007

12
Architecture As Is

• We have a ‘Pricing’ service in production


• There are a lot of service consumers
• We CANNOT change client or server side
Genoa, May 18th, 2007

13
Requirements

• We have two categories of customers:


• General
• Gold
• Gold customers are privileged customers and get discounts on
items.
Genoa, May 18th, 2007

14
Requirements (cont)

• ESB Runtime Requirements


• Dynamically decide which service to invoke (ItemPrice or
ItemPriceDiscounted) based on the customer type
• Promote property configuration to WAS console
• Logging
Genoa, May 18th, 2007

• Monitoring

• WSRR Governance requirements


• The physical document objects that are stored in WSRR must
have a suitable lifecycle applied to them.

15
Objectives

• SOA Solution
• WESB and WSRR integration
• SOA Governance and Monitoring
Genoa, May 18th, 2007

“WESB and WSRR are SOA key components”

16
Architecture To Be
Genoa, May 18th, 2007

WSRR

17
Genoa, May 18th, 2007
Mediation Flow

18
Genoa, May 18th, 2007
Scenario setup

19
Step by Step Implementation

• Add services to WSRR and console tour


• Create a new Service Integration Point in WESB using
WID
• Run Scenario
• Use Cases (General and Gold customer access)
Genoa, May 18th, 2007

• WSSR and Governance


• WESB Administration and Policy Promotion

20
Genoa, May 18th, 2007

Q&A

21
Genoa, May 18th, 2007

Thank You

22

You might also like