Вы находитесь на странице: 1из 72

IBM Software An IBM Proof of Technology

Discovering the value of IBM


Integration Bus v10
Presentation
An IBM Proof of Technology
JCJR-9YVSER

© Copyright IBM Corporation, 2014


US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
An IBM Proof of Technology

IBM Systems Middleware

Introduction

Discovering the value of IBM Integration


Bus v10

© 2015 IBM Corporation

IBM Software

Agenda

 Welcome / Intro / Agenda


 Introduction To IBM® Integration Bus
– The basics, Introduction to the IIB Toolkit
– Labs
• Lab 1 - Applications and libraries, developing a simple application
• Lab 2 - Message parsing, the logical message model, content-based routing
 Exploring more advanced features of IBM Integration Bus
– Advanced integration features and functions
– What’s new in IIB V10!
– Labs
• Lab 3 - Patterns and file processing
• Lab 4 - Message modeling with DFDL
• Lab 5 - Web administration
• Lab 6 - Implementing a service interface
• Lab 7 - Create a REST API
• Lab 8 - Exception handling and debugger
 Summary and wrap-up

2 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 3
IBM Software

Welcome to the IBM Office

 Introductions
 Access restrictions
 Restrooms
 Emergency exits
 Smoking policy
 Breakfast/Lunch/Snacks – location and times
 Special meal requirements?

3 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

Meet the IBM team!

4 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 4
IBM Software

Introductions

 Please introduce yourself

 Name and organization

 Current integration
technologies/tools in use

What do you want out of this Exploration session?

5 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

The Basics

6 Discovering the Value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 5
IBM Software

Enterprise Service Bus (ESB) – architectural concept

Portal service

SOAP
service request
(for example,
.NET)
B2B
interactions
Service
flow

Data

Existing
applications

New
service logic

7 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

What do we mean by integration?

 Enterprise systems consist of many logical endpoints


– Off-the-shelf applications, services, web apps, devices, appliances, custom-built software…

 Endpoints expose a set of inputs and outputs, which comprise:


– Protocols – for example, IBM® WebSphere® MQ, TCP/IP, HTTP, File system, FTP, SMTP, POP3 and
others
– Message formats – for example, Binary (C/COBOL), XML, Industry (SWIFT, EDI, HL7), user-defined

 Integration is about connecting these endpoints together in meaningful ways


– Route, transform, enrich, filter, monitor, distribute, decompose, correlate, fire and forget, request or
reply, publish or subscribe, aggregation, fan-in, complex event processing…

8 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 6
IBM Software

Integration usage patterns

 Some common integration usage patterns

– Add logging to existing service


– Extend reach of existing applications Common usage
patterns
– Distribute database information to where it’s needed
– File hub to connect batch and online
– Integrate packaged applications
– Take advantage of .NET applications
– Policy enforcement point for secure connectivity
– Extend enterprise to devices and mobile
– Monitor business activity and act intelligently
– Detect and act upon business events and rules
– Connectivity and integration for business processes
Emerging usage
– Enable policy-based management patterns

 New usage patterns continually emerging!

9 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

IBM integration themes

 Simple and productive


– Making it easier and quicker to develop and manage integration solutions
• Learn, develop, deploy, manage, migrate quickly and easily

 Universal and independent


– Connecting to a range of different systems
• Universal connectivity includes standards, de facto standards, industry and custom systems

 Industry-specific and relevant


– Provide industry-relevant connectivity packs to solve domain-specific problems
• Industry specific nodes, solution-oriented patterns & user-oriented tooling

 Dynamic and intelligent


– Allow the creation of dynamic solutions that provide business insight
• Flexible configuration tools, analysis of data and intelligence

 High-performing and scalable


– Provide a platform and technology neutral connectivity option
• Work on the widest possible range of hardware, software and virtualized environments

10 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 7
IBM Software

A broad range of supported platforms and operating environments

 Broad range of operating system and hardware platforms supported


– AIX®, Windows, z/OS®, HP-UX, Linux on xSeries, pSeries, zSeries, Solaris (x86-64 & SPARC), Ubuntu
– Optimized 64-bit support on all platforms, developer OS and server OS
– 32 bit Windows and 32 bit Linux no longer supported
– Express, Standard and Advanced editions make IIB applicable for all solutions and budgets

 Virtual images for efficient utilization and simple provisioning


– Extensive support for virtualized environments, e.g. VMWare, AIX Hypervisor… any!
– Pre-built images (Hypervisor editions) available on xLinux and AIX
– Support for public and private clouds: Softlayer, Pure, non-IBM, RYO etc.
– Chef scripts for automated building of flexible IIB images (see Github)

 Technology components and pre-requisites


– Java 7.1 SR2 on all platforms
– MQ is no longer required (depending on use case – see later slide)
– MQ is still fully supported
– MQ 7.1, MQ 7.5, MQ v8

 Includes access to full range of industry standard databases and ERP systems
– DB2, Oracle, Sybase, SQL Server, Informix, solidDB
– Open Driver Manager support enables new ODBC databases to be accessed
– JDBC Type 4 for popular databases
– SAP, Siebel, Peoplesoft, JDEdwards at no additional cost

11 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

A complete solution

Advanced

Standard

Express

IBM Integration Bus

 Simply connect FROM anywhere TO anywhere


 Unparalleled range of protocols, routing, message formats and transformation options
 Easy to install, learn, develop, deploy and manage, including patterns to simplify solution
creation
 High-performing and scalable, with built-in failover support
 Connectivity packs for industry-specific content (for example, healthcare, retail,
manufacturing)

12 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 8
IBM Software

Components – What you get

Developer Central Development,


workstation QA, Production

 Integration Toolkit X
 graphical development tool, Eclipse
based

 Windows, Linux, Intel


X
 Integration Server X

 runtime engine

 various platforms

13 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

Architected for high performance and scalability

IIB Bus Node


Integration
Integration Server
Integration Bus Server
Toolkit

Web Admin

 Integration Bus Toolkit  Integration node


– Development and test environment – Standalone runtime environment that
runs message flows
– Built on Rational® Application
Developer – Multiple Integration Servers allow
isolation and scalability
 Web Administration tool – Many different platforms
– Hosted on an MQ queue manager
14 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 9
IBM Software

Integration Bus Toolkit – Making Programming Easy

15 Discovering the Value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

© 2015 IBM Corporation


Page 10
IBM Software

Easy to Develop - Integration Bus Toolkit is visual and graphical

17 Discovering the Value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

Easy to Develop – how you think

18 Discovering the Value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 11
IBM Software

Easy to Develop – Eclipse designed

19 Discovering the Value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

Easy to Develop – self documenting

20 Discovering the Value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 12
IBM Software

Integration Bus development concepts

21 Discovering the Value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

Applications, Libraries and Services


▪Applications package end-to-end connectivity solutions Explore in Lab 1!
▪ The concept of an application is shared between the toolkit and runtime
▪ Applications are deployed and managed as a single unit of isolation

▪Services are Applications with a well defined interface (contract)


▪ The service interface is expressed with a WSDL and a port type
▪ Service creation includes tooling to build the interface and structure

▪Libraries package resources for reuse (flows, scripts, models)


▪Resources in Application and Services are not visible to anything else
▪ Use this to manage your solutions inside an Integration Server

22 Discovering the Value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 13
IBM Software

Integration Bus uses a Node-Based Programming Model


Makes it Easy to Create Connectivity Solutions!
 Built-in nodes encapsulate transports, technologies and applications
– Nearly 100 nodes available out-of-the-box!
– Intent is to make the common tasks easy, and the rest possible!
– Use the built-in nodes to reduce the amount of custom code required
– Doing so makes best use of the built-in facilities like activity trace and resource statistics

23 Discovering the Value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

Nodes are reusable and consistent

node
failure output
terminal connectors
input
connector

Action
input
input terminal
message
output
terminals output
message

24 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 14
IBM Software

Integration Servers run your work

Integration node
Integration Server #1 IS 2 IS 3 IS 4 IS 5 IS n

Development
artifacts

25 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

Development – BAR files and deployment

Message
Applications
Set Project
Message Set Project

Message
Messagemodels
Set
Message Set

Deployment
Message
Messageflows
Flow process
Message Flow

BAR file
Bar File

Message
Libraries
Flow Project
Message Flow Project

Message
Messagemodels
Set
Message Set

Message
Messageflows
Flow
Message Flow

26 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 15
IBM Software

Development – BAR files and deployment

Integration node
Integration Server #1 IS 2 IS 3 IS n

Deployment
process BAR file #1
Message models
Message flows
BAR file
Bar File

BAR file 2

BAR file 3

BAR file 4

27 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

Understanding Data Modeling, Parsing and Validation

28 Discovering the Value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 16
IBM Software

Logical message model


Easily model any type of data!

Physical Logical

<order>
<name> Order
<first>John</first>
<last>Smith</last>
</name>
<item>Graphics Card</item>
<quantity>32</quantity>
<price>200</price> Name Item Qty Price Date
String Integer Integer Date
<date>07/11/08</date>
</order>

John,Smith,Graphics Card, First Last


32,200,07/11/08 String String

John Smith............
Navigate the Message Tree using XPATH:
Graphics Card.........
3220020071108......... $Body/Order/Name/Last or $Root/XMLNSC/Order/Name/Last

29 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

Parsers do the work


Make message handling easy!
 Transform raw data into logical view and vice versa C Header COBOL WSDL CORBA
Copybook IDL
 Data models
– Created on-the-fly if data is self-defining (XML, JSON)
– Defined using importers or definitions in IIB Toolkit
XML DTD Data
 Payload parsers: Schema base
– Created based on input/response message parsing tabs
– Or can be overridden by header information such as MQRFH2
– Can also be created using Java, ESQL, etc language calls
• BLOB - No structure, just a sequence of bits File Import
• XML – XMLNSC, XMLNS
• Standards - SOAP, MIME, JSON
• Model – DFDL, MRM
• DataObject - For interfacing to EIS systems via WebSphere Adapters Order
• JMS – JMSMap, JMSStream
• Other - WTX, User plugin parsers
 Transport header parsers: Name Item Qty Price Date
– Created by the transport nodes
• WMQ - MQMD, MQRFH2, MQWIH, MQCICS, MQRMH ….
• HTTP - HttpInputHeader, HttpRequestHeader, HttpReplyHeader,….
First Last Explore in Lab 2!
• JMS - JMSTransport …

30 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 17
IBM Software

The Message Assembly – What is it?

Root Environment Local Environment

Properties Headers Body … Variables … Variables

System Your System Your


Stuff Stuff Stuff Stuff
The Message Assembly is the internal (IIB) representation of a message. It consists of four "trees"
The Message Tree, which includes all the headers that are present in the message, in addition to the message body
The Message Tree is always present. The root of the Message Tree is called Root
It is passed from node to node in a single instance of a message flow
The Environment Tree
The Environment tree can be used to store information while the message passes through the message flow.
The Environment tree differs from the LocalEnvironment tree in that a single instance of it is maintained throughout the
message flow.
The LocalEnvironment Tree
The LocalEnvironment tree is a structure in which you can also store information while the processes the message
The Localenvironment tree differs from the Environment tree in that an Environment variable’s scope is defined for the
whole flow, while a LocalEnvironment variable’s scope is defined at the node level (although it can optionally be
propagated to the next node)
The ExceptionList Tree
The ExceptionList tree is a part of the Message Assembly in which the message flow writes information about
exceptions that occur when a message is processed.
31 Discovering the Value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

Routing and Orchestration

32 Discovering the Value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 18
IBM Software

Routing – Delivering data to the right places

 Core integration function


– Can be simple to complex
– Can be based on content or rules
– Decisions can be static or dynamic
 Many ways to do routing:
– Programmatically
• JavaCompute node (Java)
• .NETCompute (Any CLR-compliant language)
• Compute node (eSQL)
– Configuration-based
RouteToLabel
• Route-To-Label
• Filter node
• DatabaseRoute node
• Publication node
• Route node

33 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

Routing is easy using the Route node!

 Configuration-driven
– No programming needed
 As many output paths as needed
– Three default output terminals (Match, Default, Failure)
– Add additional output terminals as needed
 Filter table controls routing to output terminals
– Made up of XPath expressions
– Default terminal if none true
– Match on First or All
 Lab 2 will demonstrate use
– Configure a Route node Process
US
– Define two additional output = ‘US’ messages
terminals
Check Process
– Label them US and Canada Country Canada
= ‘CA’ messages
– default path for no-match situation
– Use the XPath Expression Builder default Process
Explore in Lab 2!
to define the rules all
others
34 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 19
IBM Software

Tools

35 9/19/2015 Discovering the Value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

Message Flow Exerciser


Makes message flows easy to test!

 The Integration Bus Toolkit includes a Message Flow Exerciser


 Can be used to test message flows containing the following types of input nodes:
– WebSphere MQ, JMS, SOAP, HTTP and SCA

 Monitors the output nodes in


a message flow
– Provides information about
the path that a test message
takes through a message flow
– This includes information
about errors that are
generated by the message
flow
 Test scripts can be saved
– Enables repeatable test
suites to be created

Explore in Lab 1!

36 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 20
IBM Software

XPath Expression Builder


Makes message formats easy to navigate!

 The Integration Bus Toolkit includes an XPath Expression Builder


 Easy-to-use tool
– Build XPath visually
– Or enter directly
 Data Types Viewer
– Use message tree
 XPath Functions palette
– Supplied XPath functions
 Operators palette Drag/drop
– XPath operators element to
build XPATH
 XPath Expression field expression
– Displays expression as it is generated
– Content assist available
Shows XPATH expression. You
can also use Content Assist in
Explore in Lab 2!
this field.

37 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

Integrated Flow Debugger


Makes finding problems easy!

 The Integration Bus Toolkit includes an integrated Flow Debugger


– Convenient, easy to use graphical interface for flow testing
– Operates in a Debug perspective
– Can be initiated from Test Client or Debug Perspective
 Breakpoints between nodes or within node logic
– Stop execution at any point
• Current content of message trees
examined and/or modified
– Step Over executes next node then pauses
– Resume Execution (breakpoints intact)
– Run To Completion (breakpoints disabled)

 Step into node and debug at the source level


– Subflows
– Compute (eSQL)
– JavaCompute (Java)
– .NETCompute
Explore in Lab 7!

38 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 21
IBM Software

39 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

Time to explore Application

 Lab 1 - Create a new application Message flow

– Construct a simple Message Flow in the application


• HTTPInput node gets messages from a queue
• HTTPOutput node puts messages to a queue
• Trace node renders message structure into a readable format
– Test your application
• Use the Message Flow Exerciser to deploy and test
- XML Message In/Out, No Transformation
 Lab 2 - Extend your flow to do message parsing and validation
– Modify your message flow to perform content-based routing
– Use the interactive debugger to test your flow
• Set breakpoints within the flow
• Examine message tree
• Modify message tree

XML XML
message message
in Message Flow out

IBM Integration Bus


40 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 22
IBM Software

It’s time For Labs 1-2!


 Introductory labs (approx. 45 – 60 mins)
 Building and executing a simple message flow
 Extending the message flow for parsing and validation
 Extending the message flow for content-based routing
 Tools uou will use:
 Message Flow Exerciser
 XPath Expression Builder
 Integrated Flow Debugger

41 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

Advanced integration features and functions

42 Discovering the Value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 23
IBM Software

File support overview

43 Discovering the Value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

Making file processing simple


 Native file processing support
– Local files, as well as FTP/SFTP/FTPS

 Node-based implementation easy to use


– FileInput, FileOutput and FileRead nodes
– Combine with other IIB nodes
• (e.g.) File to MQ, File to database, File record filtering

 Provides efficient handling of large files


– Allows very large (gigabyte) files to be processed without using excessive memory
– Appropriate IIB parsers have been enhanced to request data “on demand”

 Comprehensive support for record detection


– Simple: LF, EOL, CRLF, fixed-length, whole-file, user-defined
– Parser: Use an existing message definition to identify record boundaries

 Flexible operational model


– Archive and back-out directory, checkpoint/restart recovery model
– Hot deployment, no restart necessary
– Configurable services allow operational change management
Explore in Lab 3!
 File processing examples
– Split batch of records to set of messages
– Combine messages to produce batch of records in file
– Transforming data formats
– Routing based on file content
– Connecting and sending to different protocols (MQ, JMS, HTTP, TCPIP, SAP, Siebel, Web Services, IMS, CICS, DB…
44 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 24
IBM Software

FileInput node – Basic algorithm

 Pattern-driven approach
– Scans directory for files that match pattern
– File exclusion pattern to specify files to ignore
/home
 Include local subdirectories option:
– Scan specified directory and all subdirectories, recursively
• Skips directories that cannot be accessed data
• Internal directories are made at each level
• Symbolic links are supported
• Infinite recursion detected

 Locked files ignored


messages

F1.txt F2.xml F3.txt

For example:
Input directory:
/home/data/messages
File name or pattern: *.txt
45 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

FileOutput node – Basic algorithm

 Message body written to specified file

 Destination directory and file name can be set dynamically in flow

 Options if output file already exists include:


– Replace existing file, fail, archive previous file, append record

 FTP option as well


– Transfer is synchronous
– Use additional instances if throughput rate is issue

46 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 25
IBM Software

Integrate flows with managed file transfer products


Consistent with FileInput & FileOutput nodes but exploit MFT product features
 WebSphere MQ Managed File Transfer (MFT)
– File transfer over MQ backbone – move data reliably!
– Basic FTP; many MFT products do not truly move data reliably
– Enable end-to-end transactional file processing
• Receive / send FTE transfers
• Consistent with FileInput/FileOutput nodes but make full use of the power of MQ MFT
- MFT Metadata provided in LocalEnvironment, allowing intelligent processing of transfers
• On output, LocalEnvironment allows transfer overrides and customizable metadata
• Typical scenarios are reliable file-to-queue, database-to-file, file-to-file
• Agents automatically installed, configured and managed

 IBM Sterling Connect:Direct


– Connect:Direct nodes extend file processing capabilities
• Receive / send Connect:Direct transfers - Uses standard CD client API
• Consistent with FileInput/FileOutput nodes but make full use of the power of Connect:Direct
• Simplifies using Connect:Direct (no need to understand process scripts)
• Input node monitors Connect:Direct servers stats for completed transfers
• Processes files immediately - Connect:Direct Metadata available to flow
• Can leave file unchanged after processing (just delete notification message)
• Output node identifies destination Connect:Direct server, directory, and more
- Can be overridden using local environment - Including any Connect:Direct options
• Wild card file names, sequential and partitioned datasets supported
• Connect:Direct Metadata in LocalEnvironment
47 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

The challenge

From:
MQ
File

WSDL

To:

48 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 26
IBM Software

Patterns for simplified development

 Creates top-down, parameterized connectivity solutions


 Reduces common problems in flow development
 Establishes best practices for integration solutions
 Reduces time-to-value for solution development
 Patterns are easily extended with regular IIB functionality

49 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

Pattern generation
 Pattern generation creates the production-ready Integration Bus projects
• Generated projects reflect the configuration choices of the pattern user
• Configuration is saved so that the pattern can be re-generated if required

Step 1: Configure pattern parameters


Step 2: Generate pattern instance
Step 3: Review generated resources (optional)
Step 4: Deploy pattern

50 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 27
IBM Software

Built-in patterns

 IBM Integration Bus provides a core set of built-in patterns


 These implement a variety of common scenarios:
– Web service front end to a MQ based application
– Processing data stored in a file and routing to one or more queues
– Adding a proxy in front of a web service provider
– Processing data from an SAP system and routing to MQ
– Shredding messages and routing to one or more queues
 Patterns are selected based on client feedback and field experience
 This core set of patterns continues to grow with each release

Explore in Lab 3!

51 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

Have a better idea? Create your own patterns!

52 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 28
IBM Software

Message Modelling with DFDL

53 Discovering the Value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

Data format description language (DFDL)

 A new open standard  Leverage XML technology and concepts


– Open Grid Forum (OGF) – W3C XML Schema subset & type system
– http://www.ogf.org/ – Annotations within the XSD
– Version 1.0 • Physical representation of data
– ‘Proposed Recommendation’ status – XPath to reference fields within data
 Round-tripping
 A way of describing data…
– Read / write data in described format
– NOT a data format itself!
• From same description
 Describe any data format …
 Keep simple cases simple
– Textual and binary
– Simple descriptions human readable
– Commercial record-oriented
 Generality
– Scientific and numeric
– Think “Type Tree + MRM” and more
– Modern and legacy
– Industry standards
 High performance …
– Right data format for the job

54 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 29
IBM Software

Creating a DFDL model

Launcher for Select the


creating type of data
Integration Bus you are
project artifacts working with

 Or drop existing DFDL schema into Integration Bus library

55 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

Wizard options for creating a DFDL model

 Guided authoring
 Using the DFDL editor
 Importing from other metadata
 Already have DFDL schema

Select how you


want to create
the DFDL
model

Explore in Lab 8!

56 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 30
IBM Software

Creating a DFDL model using the editor

Outline
view

Logical DFDL
structure properties
view view

Problems
view
57 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

Testing a DFDL model within the editor


Parsed
‘infoset’

Run
parser
No
deploy
needed!

Sample
Parsed Delimiters Hex view
data
data highlighted
58 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 31
IBM Software

Transformation – graphical data mapping

Message In

Message Out

59 Discovering the Value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

Powerful transformation options

▪Integration Bus has a number of transformation options:


▪ Graphical Mapping
▪ XSLT
▪ ESQL
▪ Java
▪ .NET

▪Reflects the importance of transformation in connectivity solutions


▪ User-defined nodes supported for Java and C/C++

▪Every transformation option has strengths and weaknesses


– Performance and scalability
– Backend integration
– Skill sets and learning curve
– Developer usability
– Portability and maintenance
 Use a transformation technology appropriate to the problem at hand!

60 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 32
IBM Software

IBM graphical mapper


Makes transformation easy!

 Graphical mapping tool simplifies transformation, improves usability


– Simple learning curve
– Simple transformations are easy to create
– Complex transformations build on concepts previously mastered
 Improved capability over older mapping technologies
– Builds upon ‘best of breed’ mapping technologies in IBM products
– Full XPath 2.0 scripting support
• Standards-based language designed for hierarchical data structures
– Databases can be a map source/target as well
 Rich set of features make GDM a good default transformation choice
 Excellent performance
– Dedicated runtime engine Message In

Explore in
Lab 4!
Message Out

61 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software
IBM Graphical Data Mapper
Graphical transformations InfoSphere MDM RAD for WebSphere
DataPower IBM Integration Bus
IBM Integration Designer Rational Software Architect
 IBM GDM designed for whole IBM product set, e.g.
– Integration Bus V9 – V10, WebSphere Message Broker v8, DataPower®
– InfoSphere® Master Data Management v10, Integration Designer v7.5/v8
– Rational Application Developer for WebSphere Software v8.5
– Rational Software Architect v8.5, RSA for WebSphere Software v8.5
– Other products yet to announce

 Directly access stored procedures from within a map


– Complements existing database select, insert, update, delete
– Incorporate user-defined database functions into your graphical transforms
– All standard broker databases supported, e.g. Oracle, DB2, SQLServer…

 Maps available to user patterns


– Graphical creation of flows which require transformation logic
• For example: new input or output messages
– Invocation of mapper when pattern instances are generated
– User guidance through HTML pattern help and task list
– Patterns to demonstrate include CRM account mapping

62 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 33
IBM Software

The mapping editor

63 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

The mapping editor

Input / Source tree

64 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 34
IBM Software

The mapping editor

Output / Target tree

65 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

The mapping editor

Properties editor

66 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 35
IBM Software

Structured mappings

67 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

Transform types

 Local  Move
 For each  Assign
 If / Else  Convert

 Submap  XPath function – categorised

 Create  Custom XPath expression


 Join  Java – user defined

 Append  ESQL – user defined


 Group

68 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 36
IBM Software

Creating mappings

69 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

Function transforms

 The target value can be computed by applying a


function to one or more inputs
 Large function library from XPath 2.0
 String manipulation
– For example: concatenation, sub-string, matching,
find/replace, regex
 Numeric calculation
– Counting, summing, rounding, min/max, and more
 Date/time processing
– Creating timestamps, extracting components of
date/time, duration processing

70 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 37
IBM Software

Custom XPath transform

 Transform the input to the output using any legal XPath 2.0 expression

1.6*sum($Item/(Price * Quantity))

71 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

Automap

 Automates the task of producing


transformations between source
and target elements of the same
(or similar) names
 Useful for working with large
schemas

Explore in Lab 4!

72 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 38
IBM Software

Web administration

73 Discovering the Value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

Web Administration for Universal Access


 Web Administration Console
– Objective is to provide comprehensive web management interface
• Focus on non-administrators to understand IIB Nodes, Servers &
resources
– Supports all major browsers Firefox, IE, Opera, Safari, Chrome
– Designed as a complement to IIB Explorer
• IIB Administrators can continue to use IIB Explorer

 Easy to configure
– No extra moving parts - uses internal HTTP server to serve data
• Just start a port for web admin, and go!
– Can reconfigure to listen on user port or disable
• SSL connector configured via mqsichangeproperties

 Using Web Admin


– Intuitive tree view shows hierarchy of IIB resources
– View resource details with click or button
– Includes full suite of resources
• Apps, Libs, Flows, Configurable services etc

 Web Admin & IIB Explorer


– IIB Explorer & web admin designed for concurrent use
– IIB Explorer can manage multiple versions

74 Discovering the Value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 39
IBM Software

Web administration console

– Provides comprehensive web management interface


• Focus on non-administrators to understand nodes and
resources
– Supports all major browsers: Firefox, IE, Opera, Safari,
Chrome
– Easy to configure
• No extra “moving parts” - uses internal HTTP server to
serve data
• Just start a port for web admin, and begin using
– Access to modify resources
Intuitive tree view shows hierarchy of MB resources
– View resource details with click or button
– Includes full suite of resources
• Apps, libraries, flows, configurable services and others

75 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

Editing integration server properties

 To edit the properties of an integration server:


1. Select it in the navigator
2. Click the Edit button in the main content pane
3. Update the property values as required
4. Click Save

76 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 40
IBM Software

Manage resources

 Manage resources deployed to integration servers in the Web UI


– Deploy BAR files
– Start/Stop All Application Types
– Start/Stop All Message Flows
– Delete All Content
– Delete specific resources

77 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

Resource statistics

 Resource statistics are collected by an integration node to record performance and operating
details of resources that are used by integration servers.
– Used to ensure that your systems are using available resources efficiently
– Can help to pre-empt situations where system resources are overburdened

 If you detect that system resources are under pressure


1.Analyse the resource statistics data collected by the integration node
• Analysis may require specialist skills and knowledge of each resource type
2.Assess whether the cause of the concern is the use of those resources by IIB

 Resource statistics collection is not active by default


– Collection can be activated on individual integration servers using the Web UI
• Collection may result in a minor performance degradation of the integration node

78 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 41
IBM Software

Starting and stopping resource statistics collection

 To start resource statistics collection:


1. Open the Web UI for your integration node
2. Expand the Servers section in the navigator
3. Click the down arrow beside the integration server to
display the menu
4. In the context menu, click Resource statistics on

 A success message will be displayed to indicate when


resource statistics collection has been activated:

 Follow a similar process to stop resource statistics collection,


clicking Resource Statistics off in the context menu

79 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

Viewing resource statistics data

 To view resource statistics data:


1. Open the Web UI for your integration node
2. Expand the Servers section in the navigator
3. Click the integration server for which you want to view resource statistics
4. Click the Resource Statistics tab

80 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 42
IBM Software

Changing the resource type

 It is only possible to view the resource statistics data for a single resource type at any given
time
– By default, resource statistics for the Java Virtual Machine (JVM) are displayed when the
Resource Statistics tab is first displayed
 To change the resource type, select the resource type using the Resource type drop-down

81 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

Displaying additional resources in the graphs

 By default, the summary resource is selected in the table and a corresponding line is drawn
on the graphs
– Some resource types only display the summary resource
 If multiple resources are available for the selected resource type, you can click on the resource
name in the table to add it to the graphs displayed in the top section
– Different colours are used to distinguish the resources on the graph

82 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 43
IBM Software

Displaying the data points in a graph

 The data points that have been collected for each resource can be displayed on a graph by
hovering the mouse over the graph
 Hovering the mouse over a data point will display the actual measurement that was collected
at that time

83 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

Downloading resource statistics data

 The resource statistics data for the currently selected resource type can be downloaded by
clicking the Download data button
 The browser will prompt the user to save the data as a CSV file
– The name of the file will have the following format:

ResourceStatistics_<RESOURCE_TYPE>_<TIMESTAMP>.csv

84 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 44
IBM Software

Support for Services

85 Discovering the Value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

Integration Services
 Integration Services are means of developing, deploying and managing your
service-oriented integration solutions.

Integration Service
• An application with a well-defined interface
 Service interface is expressed via WSDL with a port type
 Service interface gives service application a structure!
• Services promote encapsulation and isolation for
service-oriented integration solutions
• Service can reference one or more libraries
• Binding must be specified for successful deployment
 Default binding is created out of the box

 Services span all aspects of the Toolkit and IIB runtime, and are designed to
make the development and management of service-oriented solutions easier
in IIB.
86 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 45
IBM Software

Integration Services
 Integration Services are means of developing, deploying and managing your service
oriented integration solutions
 Designed to make development and management of service-oriented solutions
easier

 Integration Service
– An application with a well-defined interface
• Service interface is expressed via WSDL with a port type
• Service interface gives *service* application structure
– Promotes encapsulation and isolation for service oriented
integration solutions
– Can reference one or more libraries
– Binding must be specified for successful deployment
• Default binding is created out of the box

87 Discovering the Value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

Integration Service anatomy

 WSDL (port type) defines service interface


 Service interface defines one or more operations
 Service Descriptor (XML) ties service interface with the
service implementation
 Each operation is implemented as one (or more) .subflow
and supporting resources (e.g. Maps, ESQL, XSDs)
 Main entry point is implemented as .msgflow, but users
don’t need to concern themselves with it.
 Supporting resources may also reside in referenced
libraries

88 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 46
IBM Software

Creating a new Integration Service

 Define it yourself
 Import existing WSDL

89 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

Option one – Define it yourself


 Integration Service editor comes up with
Interface tab getting focus.
 User defines one or more operations, their
inputs, outputs and faults.
 Request-response or one-way
operations
 Select existing input/output/fault
types or create new types

90 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 47
IBM Software

Option two – Use existing WSDL

1. Select existing WSDL file


2. Select binding

WSDL is imported by the Toolkit

91 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

Implementing integration services – Integration Service editor

 Service tab in the service editor is for


supplying and navigating integration service
implementation
 Service Overview is an entry point that gives
user an overview of their service (binding
information, function selector, quick view of
operations: implemented/not implemented) and
navigational capabilities

 Selecting particular operation opens a flow editor to


provide implementation for service subflow

 One .subflow per operation:


 Request-Response subflow for request-
response operations
 Request subflow for one-way operations

92 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 48
IBM Software

Integration Service binding

 If Integration Service binding has not been defined, user


selects ‘Generate Binding’ link to complete simple Binding
configuration wizard.
 SOAP over HTTP binding
 REST API

 User can update service binding


configuration via Properties view
Note that service interface (WSDL file) cannot
be updated via Properties view

93 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

Export Integration Service interface for external use

Save Integration Service WSDL and


XSDs to the file system:
• Service consumers
• External tools (e.g. SOAP UI)
• And more…

94 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 49
IBM Software

REST APIs

 A REST API is a lightweight web service API based on HTTP, and is a much simpler
alternative to SOAP based web services.
 A REST API describes a set of resources and a set of operations that can be called on those
resources.
 Those operations can be called from any HTTP client—there are HTTP clients available for
most programming languages.
 Operations in a REST API can easily be called from JavaScript code running in a web
browser, or application code running on a mobile device.

Mobile
apps Cloud
REST
apps
Web API
pages

95 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

REST APIs – Swagger

 Swagger is an open standard for defining a REST API:


• http://swagger.io/
 Along with the specification, there is a set of open source tooling that can be used
to interact with Swagger documents and the REST APIs that they describe.
 A Swagger document includes definitions of the resources, operations, and
parameters in a REST API. It can also include JSON Schema that describes the
structure of the request and response bodies to an operation.
 A Swagger document can be thought of as the REST API equivalent of a WSDL
document for a SOAP web service.
 Integration Bus supports Swagger 2.0. The specification for Swagger 2.0 can be
found at:
• https://github.com/swagger-api/swagger-spec/blob/master/versions/2.0.md
 In order to build a REST API in Integration Bus, you must develop and supply a
Swagger 2.0 document that describes the REST API you are going to build.

96 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 50
IBM Software

REST APIs – Developing a Swagger document

 A sample Swagger document is shipped with the product:


• <install root>/server/sample/restapis/swagger.json
 That sample is also included in the product documentation.
 Swagger Editor is an open source tool that can be used to assist in the development of a
Swagger document. Swagger Editor can be downloaded and run locally, or is also hosted on
the web (along with a more extensive sample):
• http://editor.swagger.io/#/
 Once the Swagger document has been built in Swagger Editor, simply click on File >
Download JSON. That JSON file can then be used with Integration Bus.

97 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

REST APIs – REST APIs in Integration Bus

 Operations defined in the REST API are implemented as normal subflows.


 The REST API container automatically takes care of the routing of inbound HTTP
requests to the correct subflow for the operation being called.
 You simply need to connect the dots between the Input and Output nodes in each
subflow!
 REST APIs support all of the Integration Bus features that you can use with
applications (such as shared libraries, monitoring, activity log), and all message
flow nodes can be used within a REST API.

98 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 51
IBM Software

REST APIs – New project wizard

99 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

REST APIs – REST API Description view

100 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 52
IBM Software

REST APIs – implementing an operation

 JSON
– Default message domain for REST APIs
– May use other message domains – e.g. as XMLNSC
 Select “Implement the operation” link
– Empty subflow generated
 Operation called by HTTP client
– Message passed to Input node for the corresponding subflow
– Message has JSON request body if a body provided in request
– Parameters (path, query, and header parameters) defined by operation
• Automatically extracted from the HTTP request
• Placed into the LocalEnvironment tree.
 Subflow completes
– Passes message to Output node
– Response passed back to HTTP client

101 Discovering the Value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

Providing a SOAP-based web service in Integration Bus


 Two ‘SOAP’ Nodes support Provider scenarios
– SOAPInput, SOAPReply
 Supports Request / Response
– Synchronous and Asynchronous processing
 SOAP Parser
– Simplifies SOAP Header Processing
– Simplifies attachment processing
– Simplifies SOAP message building
 WSDL or Gateway modes of operation
– WSDL mode: Validate each message against the WSDL
– Gateway mode: WSDL, allowing the servicing of different types of requests
 Supports SOAP 1.1/1.2, WSDL 1.1, MTOM/XOP, SOAP with Attachments
– WS-I Basic Profile 1.1 compliant
 Advanced capabilities configured on nodes or in Policy Sets
– WS-Addressing, WS-RM, WS-Security

102 Discovering the Value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 53
IBM Software

Consuming a SOAP-based web service in Integration Bus


 Three ‘SOAP’ nodes support consumer scenarios
– SOAPRequest
– SOAPAsyncRequest & SOAPAsyncResponse
 Supports Request / Response
– Synchronous and asynchronous processing
 SOAP Parser
– Simplifies SOAP header processing
– Simplifies attachment processing
– Simplifies SOAP message building
 WSDL or Gateway modes of operation
– WSDL mode: Validate each message against the WSDL
– Gateway mode: WSDL, allowing the servicing of different types of requests
 Supports SOAP 1.1/1.2, WSDL 1.1, MTOM/XOP, SOAP with Attachments
– WS-I Basic Profile 1.1 compliant
 Advanced capabilities configured on nodes or in Policy Sets
– WS-Addressing, WS-RM, WS-Security

103 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

Flow scenario: “Online retailer” provider and consumer

Explore in Lab 4!

Supplier
(Web Service Provider)

Request Response

Request

(Web Service Consumer)

Response

104 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 54
IBM Software

Providing a RESTful web service in Integration Bus


 Functionality accessed through the HTTP nodes
 Two nodes for Provider scenarios:
– HTTPInput, HTTPReply
• Used as a pair, these nodes enable a flow to act as a WebService provider handling
inbound requests
• HTTP Input will handle all four key methods automatically
 Can route based on the method name if you check “Set destination list”
 Has “Parse Query String” option to split the query string into “NameValue” pairs in the
LocalEnvironment (LE) if needed

105 Discovering the Value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

Consuming a RESTful web service in Integration Bus


 Three nodes for consumer scenarios
– HTTPRequest, HTTPAsyncRequest, HTTPAsyncResponse
– Enables flow to act as a WebService consumer, calling services on remote providers
 Can set (override) Request node URI
 Can set the method on the node or override in flow
– Static: URL and verbs declared on request node
– Dynamic: URL and verbs set by in LocalEnvironment to override node settings
 Other HTTP request node properties:
– LocalEnvironment overrides including HTTP request timeout, SSL parms…
 Using PROPAGATE in ESQL /Java allows “call return” and can sometimes avoid multiple
request nodes.
 Request node will build a QueryString from NameValue elements provided by flow

106 Discovering the Value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 55
IBM Software

WebSphere Service Registry and Repository

 IBM Integration Bus provides integrated support for WSRR


– Registry contains variety of “entities” (documents) such as WSDL, XSD…
• Includes entity category, its relationships and its associated user properties
– True governance achieved through registry determining MB processing
– Development and runtime usage aspects which can be used together

 Development activity
– Use WSRR AD plug-in to search registry for particular entity
– Entity can “kick start” message flow and message set creation
• For example, retrieve WSDL and drag-drop to configure external Web Service call

 Runtime interactions
– Message flows can query and select specific registry entities
– 2 nodes support most popular processing scenarios
• RegistryLookup – retrieve entity details; other nodes can act on this
• EndpointLookup – choose a specific service instance via node matching criteria
– WSRR interactions can be overridden dynamically based on message content
• Expanded expression support to include literals and variables
107 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

Exception handling and debugger

108 Discovering the Value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 56
IBM Software

Robust exception handling features


Failure
 Should be part of any message flow
– Failure terminals catch runtime exceptions within node
– Input nodes have Catch terminals
– Common use for a reusable subflow Catch
• Handle downstream exceptions

 Exception handling nodes


– Catch unhandled exceptions (Try/Catch)
• More granular error handling
– Throw exceptions (Throw)
• Or rethrow “caught” exceptions
– Trace node can log diagnostic information

109 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

Additional features worth mentioning

110 Discovering the Value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 57
IBM Software

Extensive database support

 Convenient and easy access to databases


 Read, insert, update, delete database content
 Uses include:
– Routing decisions via DB lookup
– Triggering flow from DB event
– Simple retrieval of row from DB table
– Insert/Update databases for tracking purposes
 Extended SQL/2000
 Extract database definitions
– Data Source Explorer tool
 Database source/target in a map
 Databases accessible in Compute, JavaCompute, .NETCompute, and Filter nodes
 Stored procedures support
 JDBC and ODBC supported
 IBM DB2, IBM Informix, Oracle, Sybase, SQL Server, solidDB
 Open Driver Manager allows IIB to connect to even more ODBC data sources
– For example, MySQL, PostgreSQL, Teradata, Cache, Progress…

111 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

Global cache Node 1


Cache.Value = 42;
Node 2
MyVar = Cache.Value;
 Built-in facility to share data between multiple integration nodes P S

– Global cache shared between flows, Integration Servers and IIB Nodes
– Seamless access to global cache using from all Integration Bus flows and nodes
– Typical scenarios include multi-node request-reply and multi-node aggregation
– Improve mediation response times and dramatically reduce application load
– Uses WebSphere Extreme Scale coherent cache technology to replace existing IA91 Support Pac
 Easy read and write access to global cache
– Accessed via global map data type corresponding to IIB global cache
– Read and write access in same way as other data types e.g. LocalEnvironment, MyVariable
– IIB has own system cache for inter-node information sharing
 Simple to configure and manage
– IIB cache completely contained within IIB OS processes – no extra moving parts to configure
– Flow write to global cache is replicated to other cache members using WXS technology
– IIB local cache can be administered via Explorer, command line, and management API
 Monitoring and reporting
– Full resource manager statistics shows cache interactions and other relevant statistics
– Activity log shows cache agent operations for write and read

112 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 58
IBM Software

Invoke IBM ODM rules from IBM Integration Bus


 Provide business insight during integration data flows
– For example: intelligent decision making; score then action in-flight request based on a business rule
– User creates rules (such as if-then-else rules) using tool of choice (Excel, Word, Eclipse…)
– The bus acts on these rules in flow, for example for business-level routing

 Decision service node


– Identifies inputs to business rules from in-flight data
• e.g. the customers order from whole request
• e.g. the item price from key fields…
– Invokes the built-in rule engine to perform business logic
• Open interfaces for 3rd party and user engines
– Captures rules output for downstream processing
• Business objects mapped back to in-flight data

 Create rules directly inside Integration Bus toolkit


– Significant rules authoring facility built-in
– Automatic package and deploy with integration assets
– Optionally refer to business rules on external ODM decision server
– Exploit separate full ODM Decision Center for BRMS scenarios

 Embedded rules engine for high performance


– Rule is executed in the same OS process as integration data flow
– Rule update notification ensures consistent rule execution
– Optional governance of rules through remote ODM Decision Center

113 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

Extensive security capabilities


 Input nodes can act as policy enforcement point (PEP)
– Authentication, authorization and identity mapping
– UserID/Password, X509 tokens, SAML, Kerberos, LTPA & RACF PassTickets supported
– Users can easily extend to support custom and non-standard tokens

 PEP node enables mid-flow checking


– Placed anywhere in message flow to perform security functions

 WS-Trust 1.3, TFIM and LDAP supported PDPs for


token authentication and authorization

 Operational control
– Security profiles allow operational reconfiguration of PDP
without redeploy
– Resource manager security statistics; totals, passes,
exceptions, cached

114 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 59
IBM Software

Record and replay


 Enable record and replay of in-flight data
record view replay
– Comprehensive audit of messages, web, ERP, file and other data
– Flexible topology: single or multiple nodes for recording, capture and replay

 Data recording, capture and store


– Graphically configure binary, text, XML payload capture, including whole, partial
and multi-field data

 Monitor tab or monitoring profiles identify captured events


– Capture events on any node, local or remote
• Any Integration Server in IIB can be configured as capture agent
• Configurable service identifies topic, target database

 Web tooling to view, query data


– Friendly editors to view and query payloads (e.g. key data fields)
– Independent web admin and capture for scalability

 Replay for redelivery or flow reprocessing


– Replay selected data to flows or applications
– IIB admin configures logical destinations
– User selects destinations from auto-populated drop-down list

115 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

Policy-base workload management


 Integration workload management
– Provide intelligent mechanisms to control processing speed
– Most common scenario is to reduce back-end server load
– Design allows more policy-based processing over time
– Can be applied to new or existing integration data flows

 Policy defines threshold limits and relevant actions


– Set thresholds for integration data flow throughput
– Specify actions at threshold, for example:
• NOTIFY: Higher (or lower) than threshold generates publication
• DELAY: Excessive workload will have latency added to shape throughput
• REDIRECT: At threshold, send workload to input node’s failure terminal; backout if not wired

 Web Console used to manage WLM policy


– Sophisticated behavior controllable by broker WLM policy
– Workload can be managed across classes of message flows (for example, batch vs. online)
– Policies stored in local registry, and dynamically configurable
200
– Developer can also specify
200
limits as integration data
200
flow properties 200
180 180 180 180
160 160 160 160
140 140 140 140
120 120 120 120
100 100 100 100
80 80 80 80
60 60 60 60
40 40 40 40
20 20 20 20
0 0 0 0
116 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 60
IBM Software

Hypervisor Edition v10.0 HVE


configure deploy

Config
 Easy and faster to instantiate pattern
– Simplify provisioning IIB on x/Linux and AIX
• Initial system deploy resulting in quicker time to solution value
– Private clouds
– Test or production

 Hypervisor Edition packages


– Pre-built installed VM image for OS+HW combination
• RHEL 5.5 for VMWare ESX x86-64 & IWD images
• AIX 6.1 TL7 mksysb & IWD images
• Package includes all MQ & IIB components
– Updated when new fix pack levels released
• Fix pack deploy reduces recurring maintenance cost
• Download to customer site from IBM web
• Uploaded to IWD using CLI scripts or Image Loader tool

 Configuration patterns and scripts


– HVE scenario configuration information
• Base pattern with configuration script packages
– Base pattern for most popular MQ and IIB topology configurations
• Basic broker, advanced broker, <User Pattern>
– Script packages configure base pattern
• Create exec group, deploy BAR, run MQSC, <User Script>
• Emergency fix also possible: iFix binary + script package to drive installer

 Full-function deployed configuration


– Interaction with deployed MQ, IIB components as per regular deployment
117 Discovering the value of IBM Integration Bus v10
mksysb
© 2015 IBM Corporation

IBM Software

IIB industry packs


 IIB Healthcare Pack
– Web User Interface for clinical app monitoring and operational views
– HL7 transformation pattern to generate data maps and ESQL
– HL7 error handling enhancements Q1 2014 v3.0 Q4 2013 v1.0 Q2 2013 v1.0
Q3 2014 v3.0.0.1 Q4 2014 v1.0.0.1
– Home Health Pattern to monitor patients’ vitals
– Generates message flows to support a WAN interface with SOAP/HTTP
interface using the IHE industry standard “CommunicatePCDData” WSDL
– HIPAA DFDL model

 IIB Manufacturing Pack


– OSIsoft PI Server Input and Read nodes
– OPC DA Read and Output nodes
– OPC Unified Architecture Input and Read nodes
– MQTT Publish and Subscribe nodes
– Factory publication pattern
– Web-based interface to provide operational views of data published from plant
and machinery

 IIB Retail Pack


– Integration of WebSphere Commerce with Sterling Order Management
– TLog to POSLog pattern for real-time data feeds from PoS to Enterprise
– POSLog as canonical feed
– ARTS Operational Data Model integration
– Web User Interface for real-time revenue tracking (PoS and store location
breakdowns) and operational views
118 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 61
IBM Software

IBM Integration Bus – Summary


 Powerful, flexible, extensible, production-strength product

 Key concepts
– Message flows represent application connectivities
– Message nodes modularize integration operations
– Message Tree and Logical Message Model provides focus on business data
– Patterns enable rapid, top-down development of connectivity solutions
 Rich, simple message and database processing using Graphical Mapping
– Java, ESQL, .NET can also be used
 Support for Web Services, Enterprise Messaging, and a variety of transports
 Scalable architecture for high capacity
 Integration Bus is a key IBM connectivity technology
– Unparalleled range of connectivity options and capabilities
– Supports users’ range of experience and needs
– Industry-leading performance in a broad range of scenarios

119 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

Agenda

 Welcome / Intro / Agenda


 Introduction To IBM® Integration Bus
– The Basics, Introduction to the IIB Toolkit
– Labs
• Lab 1 - Applications and Libraries, developing a simple application
• Lab 2 - Message Parsing, the Logical Message Model Content-Based Routing
 Exploring More Advanced Features of IBM® Integration Bus
– Advanced Integration Features and Functions
– Labs
• Lab 3 - Patterns and file processing
• Lab 4 - Message modeling with DFDL
• Lab 5 - Web Administration
• Lab 6 - Implementing a Service Interface
• Lab 7 - Create a REST API
• Lab 8 - Exception handling and Debugger
– Additional features worth mentioning
– What’s New in IIB V10!

 Summary and Wrap-up

120 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 62
IBM Software

Key initiatives

Cloud Open and developer-focused


• Deploy on AWS, Azure, SoftLayer • Built‐in unit testing
• PureApp as a Service IIB Patterns • Integration community
• CHEF scripts  • Connector framework 
• IIB Cloud Statement Of Direction • GitHub repos for samples and 
patterns

Platforms
Industry
• MQ Flexibility
• Healthcare
• Single package install
• Retail
• Shared libraries
• Manufacturing
• Built‐in unit testing

Visualizing, Analytics Data, Mobile, APIs


• Web UI Enhancements • REST APIs
• Policy  • SaaS Java Script APIs
• Analytics engine integration • MQTT Connector
• Embedded ODM • GDM Schemaless Mapping

121 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

Questions?

122 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 63
IBM Software

Remainder of the Day is Lab Time!

 Advanced Features Labs


 Working with Files (Lab 3) - approx. 25 mins
Using Patterns
Data Modelling with DFDL (Lab 4) - approx. 30 mins
Mapping
Web Administration (Lab 5) – approx. 30 mins
WebUI
Implementing a Service Interface (Lab 6 ) - approx. 45 mins
WSDL – Service Wizard
Create a REST API (Lab 7 - approx. 45 mins
REST API – Swagger editor & UI
 Exception Handling (Lab 8) - approx. 30 mins
Debugger
123 Discovering the Value of IBM Integration Bus v10 © 2015 IBM Corporation

An IBM Proof of Technology

IIB v10

Backup slides

© 2015 IBM Corporation


Page 64
IBM Software

Optional topics for further proof of technology


 What’s New in v10
 Labs Overview
 Integration Services
 REST APIs
 API Management
 Shared Libraries
 Graphical Data Mapping
 IBM MobileFirst Introduction
 Flexible MQ topologies
 Policy Update
 IBM MQ Appliance
 Tutorial Gallery
 IIB with Operational Decision Management
 Connectors
 Message Flow Security
 Web UI
 Administration Security
 Migration
 DFDL Update
 MQ Connection Security

125 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation

IBM Software

Aggregation nodes

 Used to implement fan-out/fan-in logic.


 A process may need to issue a set of actions, such as web service invocations
against a set of back-end services, and then wait for the results once all of the
actions are complete.
 Three nodes:
– AggregateControl
– AggregateRequest
– AggregateReply
 Here’s an example of
fan-out/fan-in logic with
asynchronous web
service and MQ
requests, implemented
using the Aggregation
nodes:

126 Discovering the value of IBM Integration Bus v10 © 2015 IBM Corporation
Page 65
IBM Software

Appendix A. Notices
This information was developed for products and services offered in the U.S.A.

IBM may not offer the products, services, or features discussed in this document in other countries.
Consult your local IBM representative for information on the products and services currently available in
your area. Any reference to an IBM product, program, or service is not intended to state or imply that
only that IBM product, program, or service may be used. Any functionally equivalent product, program, or
service that does not infringe any IBM intellectual property right may be used instead. However, it is the
user's responsibility to evaluate and verify the operation of any non-IBM product, program, or service.

IBM may have patents or pending patent applications covering subject matter described in this
document. The furnishing of this document does not grant you any license to these patents. You can
send license inquiries, in writing, to:

IBM Director of Licensing


IBM Corporation
North Castle Drive
Armonk, NY 10504-1785
U.S.A.

For license inquiries regarding double-byte (DBCS) information, contact the IBM Intellectual Property
Department in your country or send inquiries, in writing, to:

IBM World Trade Asia Corporation


Licensing
2-31 Roppongi 3-chome, Minato-ku
Tokyo 106-0032, Japan

The following paragraph does not apply to the United Kingdom or any other country where such
provisions are inconsistent with local law: INTERNATIONAL BUSINESS MACHINES
CORPORATION PROVIDES THIS PUBLICATION "AS IS" WITHOUT WARRANTY OF ANY KIND,
EITHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
OF NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Some
states do not allow disclaimer of express or implied warranties in certain transactions, therefore, this
statement may not apply to you.

This information could include technical inaccuracies or typographical errors. Changes are periodically
made to the information herein; these changes will be incorporated in new editions of the publication.
IBM may make improvements and/or changes in the product(s) and/or the program(s) described in this
publication at any time without notice.

Any references in this information to non-IBM Web sites are provided for convenience only and do not in
any manner serve as an endorsement of those Web sites. The materials at those Web sites are not part
of the materials for this IBM product and use of those Web sites is at your own risk.

IBM may use or distribute any of the information you supply in any way it believes appropriate without
incurring any obligation to you.

Any performance data contained herein was determined in a controlled environment. Therefore, the
results obtained in other operating environments may vary significantly. Some measurements may have

Page 66 Discovering the value of IBM Integration Bus v10


IBM Software

been made on development-level systems and there is no guarantee that these measurements will be
the same on generally available systems. Furthermore, some measurements may have been estimated
through extrapolation. Actual results may vary. Users of this document should verify the applicable data
for their specific environment.

Information concerning non-IBM products was obtained from the suppliers of those products, their
published announcements or other publicly available sources. IBM has not tested those products and
cannot confirm the accuracy of performance, compatibility or any other claims related to non-IBM
products. Questions on the capabilities of non-IBM products should be addressed to the suppliers of
those products.

All statements regarding IBM's future direction and intent are subject to change or withdrawal without
notice, and represent goals and objectives only.

This information contains examples of data and reports used in daily business operations. To illustrate
them as completely as possible, the examples include the names of individuals, companies, brands, and
products. All of these names are fictitious and any similarity to the names and addresses used by an
actual business enterprise is entirely coincidental. All references to fictitious companies or individuals are
used for illustration purposes only.

COPYRIGHT LICENSE:

This information contains sample application programs in source language, which illustrate programming
techniques on various operating platforms. You may copy, modify, and distribute these sample programs
in any form without payment to IBM, for the purposes of developing, using, marketing or distributing
application programs conforming to the application programming interface for the operating platform for
which the sample programs are written. These examples have not been thoroughly tested under all
conditions. IBM, therefore, cannot guarantee or imply reliability, serviceability, or function of these
programs.

Appendix Page 67
IBM Software

Appendix B. Trademarks and copyrights


The following terms are trademarks of International Business Machines Corporation in the United States,
other countries, or both:

IBM AIX CICS ClearCase ClearQuest Cloudscape

Cube Views DB2 developerWorks DRDA IMS IMS/ESA

Informix Lotus Lotus Workflow MQSeries OmniFind

Rational Redbooks Red Brick RequisitePro System i

System z Tivoli WebSphere Workplace System p

Adobe, the Adobe logo, PostScript, and the PostScript logo are either registered trademarks or
trademarks of Adobe Systems Incorporated in the United States, and/or other countries.

IT Infrastructure Library is a registered trademark of the Central Computer and Telecommunications


Agency which is now part of the Office of Government Commerce.

Intel, Intel logo, Intel Inside, Intel Inside logo, Intel Centrino, Intel Centrino logo, Celeron, Intel Xeon, Intel
SpeedStep, Itanium, and Pentium are trademarks or registered trademarks of Intel Corporation or its
subsidiaries in the United States and other countries.

Linux is a registered trademark of Linus Torvalds 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.

ITIL is a registered trademark, and a registered community trademark of The Minister for the Cabinet
Office, and is registered in the U.S. Patent and Trademark Office.

UNIX is a registered trademark of The Open Group in the United States and other countries.

Java and all Java-based trademarks and logos are trademarks or registered trademarks of Oracle and/or
its affiliates.

Cell Broadband Engine is a trademark of Sony Computer Entertainment, Inc. in the United States, other
countries, or both and is used under license therefrom.

Linear Tape-Open, LTO, the LTO Logo, Ultrium, and the Ultrium logo are trademarks of HP, IBM Corp.
and Quantum in the U.S. and other countries.

Page 68 Discovering the value of IBM Integration Bus v10


NOTES
NOTES
© Copyright IBM Corporation 2015.

The information contained in these materials is provided for


informational purposes only, and is provided AS IS without warranty
of any kind, express or implied. IBM shall not be responsible for any
damages arising out of the use of, or otherwise related to, these
materials. Nothing contained in these materials is intended to, nor
shall have the effect of, creating any warranties or representations
from IBM or its suppliers or licensors, or altering the terms and
conditions of the applicable license agreement governing the use of
IBM software. References in these materials to IBM products,
programs, or services do not imply that they will be available in all
countries in which IBM operates. This information is based on
current IBM product plans and strategy, which are subject to change
by IBM without notice. Product release dates and/or capabilities
referenced in these materials may change at any time at IBM’s sole
discretion based on market opportunities or other factors, and are not
intended to be a commitment to future product or feature availability
in any way.

IBM, the IBM logo, ibm.com and WebSphere are trademarks of


International Business Machines Corp., registered in many
jurisdictions worldwide. Other product and service names might be
trademarks of IBM or other companies. A current list of IBM
trademarks is available on the Web at “Copyright and trademark
information” at www.ibm.com/legal/copytrade.shtml.