SAP PO ADAPTER MODULE – ModuleSequencerBean [Build Release: NW 731EXT_16]
Swap MESSAGE Payload for receiver Channel
Let’s take an example Landscape to walkthrough and see how this SAP Module could help in exchanging messages between channels with no Additional Integrated configuration Setup.
Below is an Example landscape that has two AAE engine, De-central Engine for External Communication and Central Engine for Internal Communications, it’s required to integrate the De-central & Central Adapter engines for Business cases where External Systems talk to Internal Systems. As we can see Landscape configuration draws a separation where central Adapter Engine used exclusively communicating Internal Systems and De-central Adapter Engine used exclusively to communicate Systems outside Enterprise Network. We will discuss two options that will facilitate Message Exchange between De-central Engine and Central Engine
Below are possible ways to establish communication from DE-central to Central Engine:
1. via Multiple ICO Scenarios:
Here we Enable interface Message Flow from External to Internal systems via configuring two ICO Scenarios, one on De-central Adapter Engine and Other for Central Adapter Engine. The ICO on central engine configures interface routing where sender channel is SOAP Adapter with HTTP/XI 3.0 protocol I.e. it could readily process XI messages from any source. This ICO is then exposed as WebService and is then consumed by ICO on DE-CENTRAL engine. With this setup any request from external Systems is routed to central adapter engine /internal Systems.
2. Via Module Sequencing Bean – Swap Payload to any receiver Channel with no additional ICO Bindings/Agreements:
In this configuration we connect De-central to Central Engine via SAP Standard Adapter Module AF_Modules/ModuleSequenceBean.The AdapterModule AF_Modules/ModuleSequenceBean is designed to Swap an XI Message straight on to any receiver channel [as Shown Below] and will tightly couple the calling & called Channel, therefore any processing errors on calling or called channel will equally exception/Fail the Message Processing.
Pros: module could be used to invoke receiver channels for any kind of synchronous or Asynchronous communications.
could skip additional ICO ,therefore PIPELINE Steps ,and Improved Performance & throughput , in absence of this module we would have ended up redundant message processing on to central engine copied from de-central engine.
Cons: Module constrained to be used for a continuation flow i.e. only could be used for calling receiver channels, it cannot not be used to Initiate ICO flows /route message on to sender channels like we do in RequestOneWayBean.
Via this Adapter module we could bridge De-central to central Engine, for our use case we need to install the Module on File Channel of De-central Engine, then configure Module Parameters with receiver Channel Details of CentralAdapterEngine. Referring example landscape, this Module to be inserted on T1 AAE File receiver channel and module parameters populated with T2 AAE receiving channel . The module parameter details are target channel Name, Service, Party and channel Adapter Type & Adapter Namespace [ see below].
During runtime these module parameter are read by ModuleSequenceBean and looked up in CPA to fetch corresponding Channel ID. When found transfers the Message Payload from current File channel to found channel ID. The behavioural nature of this module is similar to RequestResponse bean but unlike is not restricted to synchronous calls and do not need additional ICO to be setup in order to route the message to a target channel.
Below is step by step example of Module usage in Asynchronous Mode
Let’s take an example Business case where user Details to be captured from External Portal and to be routed to internal Portal Application. As Per Example landscape any Communication from External Portal needs to be secured and hence an ICO to be configured on De-central AAE. Also we need Standalone channel on Central Adapter Engine in order to pass through External user Details to internal Portal application.
Facing external Portal we created one ICO on De-central Engine with SOAP Sender channel and the receiver File Channel for routing to Central Engine.
We created one standalone channel on Central Engine to exclusively receive & write User Details to internal Portal File System.
We install ModuleSequeneBean to join ICO on de-central engine to Standalone channel of Central Engine
ICO Configuration on De-central Engine
Step 1: SOAP Sender Channel for External Portal
Step 2: FILE receiver Channel for Routing to Central Engine
Step 3: File Receiver channel configuration against Channel on Central Adapter Engine
Please note we remote callsapadapter as the message termination is delegated to receiving channel of central adapter engine
Step 4: File Receiver Channel on Central Adapter Engine
End- End Message Flow:
We will simulate the message Via SOAP UI and we track the message routing,
Step 1: Trigger user Details request message to SAP PO.
Step 2: User Detail request successfully processed on de-central engine
Step 3: ModuleProcessedBean on De-central engine delegates XI Message to File receiver channel of Central Adapter Engine
As read from audit log the File receiver channel FILE_DECENTRAL_I delivering message to channel FILE_CENTRAL_I of Central Adapter Engine.
Step 4: User Detail request successfully written to Internal Portal via central channel FILE_CENTRAL_I