You are on page 1of 10

Preview of Web Services Reliable Messaging in SAP NetWeaver Process Integration 7.

Preview of Web Services Reliable Messaging in SAP


NetWeaver Process Integration 7.1
Applies to:
SAP NetWeaver Process Integration IT Scenarios in Version 7.1

Summary
In this article I introduce some details about WS-Reliable Messaging and its implementation in the
forthcoming release of SAP NetWeaver PI.
Author: Daniel Horacio Bianchin
Company: SAP
Created on: August 2007

Author Bio
Daniel has been working with SAP technology since 1996, and in 1997 he joined SAP. Over
the last 9 years he has worked on more than 35 projects plus consulting, training and
presales activities.
At SAP, he started as an ABAP and RFC (C++) consultant later began to work with ALE
interfaces, doing quality assurance, development optimization, in-house software
development and design, and then CRM Internet Sales implementation and interface
architecture design. After that, he has been leading development and integration teams using
SAP BC and XI. In 2005 he joined the SAP NetWeaver Regional Implementation Group.

SAP DEVELOPER NETWORK | sdn.sap.com


2007 SAP AG

BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com


1

Preview of Web Services Reliable Messaging in SAP NetWeaver Process Integration 7.1

Table of Contents
Introduction................................................................................................................................. 3
Standards in general................................................................................................................ 3
General value of open standards.......................................................................................... 3
What is OASIS? ................................................................................................................... 3
Web Services Standards...................................................................................................... 3
WS-Reliable Messaging Standard Specification....................................................................... 3
Reliable Message Layer Responsibilities ................................................................................. 4
Sequence: Definition and Exchange Protocol ........................................................................ 4
Implementation in SAP NetWeaver PI 7.1................................................................................ 5
Sequencing support: SAP Design Criteria ............................................................................ 5
Configuration Time............................................................................................................... 6
Summary................................................................................................................................. 8
Copyright .................................................................................................................................. 10

SAP DEVELOPER NETWORK | sdn.sap.com


2007 SAP AG

BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com


2

Preview of Web Services Reliable Messaging in SAP NetWeaver Process Integration 7.1

Introduction
Standards in general
General value of open standards
Open standards help naturally achieve interoperability among SOA-based application, with lower integration
efforts.
They also simplify the development of
Enterprise SOA applications in
different ways. Since many usual
types of requirements you usually find,
like interoperability, security,
semantics, modeling, etc., are already
defined and implemented, you can
concentrate on service composition
and orchestration tasks.
Developers also find it easier to learn
and use software to implement
standards, since they quickly become
familiar and find out how to use new
tools.
What is OASIS?
One of the organizations that work in
standards definition is OASIS. It
stands for Organization for the
Advancement of Structured
Information Standards
It is a not-for-profit, international consortium that drives e-business standards and drives e-business
standards development, convergence and adoption. It was founded in 1993, and has about 5000 participants
(600 organizations and individual members). Visit OASIS at http://www.oasis-open.org
They have a number of committees that work on different categories like web services, XML processing,
standard adoptions, etc.
SAP is a Foundational sponsor. Foundational Sponsors are globally recognized as industry leaders and
innovators.
Web Services Standards
There are a variety of specifications associated with web services (like WS-Reliable Messaging, WSAddressing, WS-Security, WS-Policy, WS-BPEL, etc.). Web service specifications are occasionally referred
to collectively as "WS-*".These specifications are maintained or supported by various standards.
The scope of these specification is pretty broad; it ranges from metadata, messaging or reliable messaging
to interoperability, business processes, security or transaction handling, etc.
WS-Reliable Messaging Standard Specification
WS-Reliable Messaging describes a protocol that allows messages to be delivered, complying with a certain
quality of service; it is Independent of network technologies and is based on Web Services Specification.
The February 2005 version was submitted to the OASIS Web Services Reliable Exchange (WS-RX)
Technical Committee. Voting to approve the resulting WS-Reliable Messaging 1.1 as an OASIS Standard
begins on May 16th, 2007.

SAP DEVELOPER NETWORK | sdn.sap.com


2007 SAP AG

BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com


3

Preview of Web Services Reliable Messaging in SAP NetWeaver Process Integration 7.1

In accordance with OASIS, the purpose of the WS-Reliable Messaging (WS-RM) specification is to
create a generic and open model for ensuring reliable message delivery for Web Services.

This specification describes a protocol that allows messages to be delivered reliably between distributed
applications in the presence of either software component, system or network failures, and this protocol is
described in a transport independent way allowing it to be implemented using different network
technologies.
The basic value of this specification is the description of a foundation level support layer for information
replication.

Other vendors like Microsoft and IBM also support WS-Reliable Messaging specification.
Reliable Message Layer Responsibilities
It is and independent software layer from application layer.
Many errors may interrupt a conversation. Messages may be lost, duplicated or reordered. Further, the
systems may experience failures and lose messages.
The delivery assurance is the concept that defines the quality of service for a message. Messages for
which the delivery assurance applies, contain a sequence header block.

The protocol supports the endpoints in providing these delivery assurances.


It is the responsibility of the RM Source and RM Destination to fulfill the delivery assurances, or raise an
error to the application layer.
The protocol defined allows endpoints to meet this guarantee for the delivery assurances.
Sequence: Definition and Exchange Protocol
The WS-RM protocol uses a "Sequence" header block to track and manage the reliable delivery of
messages.
Each sequence has a unique identifier element, and each message within a sequence, has a message
number element that increments by 1 from an initial value of 1. These values are contained within a
sequence header block accompanying each message being delivered in the context of a sequence.

SAP DEVELOPER NETWORK | sdn.sap.com


2007 SAP AG

BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com


4

Preview of Web Services Reliable Messaging in SAP NetWeaver Process Integration 7.1

In the picture, you can see an example where two endpoints exchange a sequence of messages.
The protocol is as follows:

1. First of all, some preconditions are arranged


2. Then, the consumer endpoint A, asks endpoint B (the provider) to create a sequence and endpoint
B, answers with a sequence identifier.
3. After that, the consumer endpoint starts to send messages, including the number and the last
message token when required.
4. Later Endpoint B (the provider side), sends back an acknowledgement with a list of the message
numbers it received.
5. If the consumer realizes that the server missed some of the messages, it sends the missing
messages again, adding an acknowledgement request at the end.
6. At that moment, the provider side issues the new acknowledgement message.
7. When the consumer finally makes sure that every message reached the server, it sends a terminate
sequence command.

Implementation in SAP NetWeaver PI 7.1


The SOAP adapter as of today supports already asynchronous messaging, however with proprietary means
since there was no standard available before, now the WS-RM protocol is supported via an own entry in the
integration engine (implemented in ABAP) and not the adapter engine. The XI 3.0 and XI 2.0 protocol will still
be supported as well.
Sequencing support: SAP Design Criteria
SAP Design Criteria offers abstraction from the Technical (WS-Reliable Messaging) Sequences:

SAP DEVELOPER NETWORK | sdn.sap.com


2007 SAP AG

BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com


5

Preview of Web Services Reliable Messaging in SAP NetWeaver Process Integration 7.1

The SOAP Sequence is a Logical Sequence and the WS-Reliable Messaging Sequence is the technical
one, that is applications interact using a Logical Sequence ID, and the WS Runtime environment maps them
to the WS-Reliable Messaging sequence.
This sequencing has a transactional behavior
A whole sequence is represented by a transaction, but on the other hand on the provider sides, each
message represents a separate transaction.

Configuration Time
At configuration time, when you are creating your communication channels in the Integration Directory, there
is a new type of adapter called Web Service.
Also the protocol is automatically set to WS-RM 2005/02

SAP DEVELOPER NETWORK | sdn.sap.com


2007 SAP AG

BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com


6

Preview of Web Services Reliable Messaging in SAP NetWeaver Process Integration 7.1

The Integration Directory replicates all the required web service and cache configuration to every SAP backend system.

SAP DEVELOPER NETWORK | sdn.sap.com


2007 SAP AG

BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com


7

Preview of Web Services Reliable Messaging in SAP NetWeaver Process Integration 7.1

The providers services published on the back-end systems are also automatically generated by the
Integration Directory:

Both SAP Process Integration and back-end systems caches are automatically loaded:

Summary
SAP Process Integration and the application platform now support the WS-Reliable Messaging open
standard protocol.

SAP DEVELOPER NETWORK | sdn.sap.com


2007 SAP AG

BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com


8

Preview of Web Services Reliable Messaging in SAP NetWeaver Process Integration 7.1

SAP Process Integration tools allows you to centrally develop and configure the WS-Reliable
Messaging integration scenarios.
The configuration is automatically propagated to the back-end systems!
The SAP Web Application Server provides automatic services to guarantee that information is
properly replicated.

SAP DEVELOPER NETWORK | sdn.sap.com


2007 SAP AG

BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com


9

Preview of Web Services Reliable Messaging in SAP NetWeaver Process Integration 7.1

Copyright
Copyright 2007 SAP AG. All rights reserved.
No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of SAP AG.
The information contained herein may be changed without prior notice.
Some software products marketed by SAP AG and its distributors contain proprietary software components of other software vendors.
Microsoft, Windows, Outlook, and PowerPoint are registered trademarks of Microsoft Corporation.
IBM, DB2, DB2 Universal Database, OS/2, Parallel Sysplex, MVS/ESA, AIX, S/390, AS/400, OS/390, OS/400, iSeries, pSeries, xSeries,
zSeries, System i, System i5, System p, System p5, System x, System z, System z9, z/OS, AFP, Intelligent Miner, WebSphere,
Netfinity, Tivoli, Informix, i5/OS, POWER, POWER5, POWER5+, OpenPower and PowerPC are trademarks or registered trademarks of
IBM Corporation.
Adobe, the Adobe logo, Acrobat, PostScript, and Reader are either trademarks or registered trademarks of Adobe Systems
Incorporated in the United States and/or other countries.
Oracle is a registered trademark of Oracle Corporation.
UNIX, X/Open, OSF/1, and Motif are registered trademarks of the Open Group.
Citrix, ICA, Program Neighborhood, MetaFrame, WinFrame, VideoFrame, and MultiWin are trademarks or registered trademarks of
Citrix Systems, Inc.
HTML, XML, XHTML and W3C are trademarks or registered trademarks of W3C, World Wide Web Consortium, Massachusetts
Institute of Technology.
Java is a registered trademark of Sun Microsystems, Inc.
JavaScript is a registered trademark of Sun Microsystems, Inc., used under license for technology invented and implemented by
Netscape.
MaxDB is a trademark of MySQL AB, Sweden.
SAP, R/3, mySAP, mySAP.com, xApps, xApp, SAP NetWeaver, and other SAP products and services mentioned herein as well as their
respective logos are trademarks or registered trademarks of SAP AG in Germany and in several other countries all over the world. All
other product and service names mentioned are the trademarks of their respective companies. Data contained in this document serves
informational purposes only. National product specifications may vary.
These materials are subject to change without notice. These materials are provided by SAP AG and its affiliated companies ("SAP
Group") for informational purposes only, without representation or warranty of any kind, and SAP Group shall not be liable for errors or
omissions with respect to the materials. The only warranties for SAP Group products and services are those that are set forth in the
express warranty statements accompanying such products and services, if any. Nothing herein should be construed as constituting an
additional warranty.
These materials are provided as is without a warranty of any kind, either express or implied, including but not limited to, the implied
warranties of merchantability, fitness for a particular purpose, or non-infringement.
SAP shall not be liable for damages of any kind including without limitation direct, special, indirect, or consequential damages that may
result from the use of these materials.
SAP does not warrant the accuracy or completeness of the information, text, graphics, links or other items contained within these
materials. SAP has no control over the information that you may access through the use of hot links contained in these materials and
does not endorse your use of third party web pages nor provide any warranty whatsoever relating to third party web pages.
Any software coding and/or code lines/strings (Code) included in this documentation are only examples and are not intended to be
used in a productive system environment. The Code is only intended better explain and visualize the syntax and phrasing rules of
certain coding. SAP does not warrant the correctness and completeness of the Code given herein, and SAP shall not be liable for errors
or damages caused by the usage of the Code, except if such damages were caused by SAP intentionally or grossly negligent.

SAP DEVELOPER NETWORK | sdn.sap.com


2007 SAP AG

BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com


10