Go to primary content
Oracle® Retail Integration Bus Implementation Guide
Release 19.0
F22947-01
  Go To Table Of Contents
Contents

Previous
Previous
 
Next
Next
 

13 Integration with Fusion Middleware

RIB is certified on the Oracle Fusion Middleware Application Server. All RIB publishers, subscribers, and TAFRs are Java EE standard components (EJBs and MDBs) that are deployed and managed by the WebLogic Application Server in managed instances. This means that the RIB can be deployed into an existing Fusion Middleware architecture without any changes.

All RIB message payloads are fully standard compliant XSD based. All of the XML payloads are namespace aware and follow the general standards as well as the conventions that make them compatible with other Oracle Fusion products such ESB and BPEL. The payload schema definitions (XSDs) are packaged with each release along with sample messages.

The recommended approach for integration between the RIB and Oracle Fusion Middleware products is at the JMS topic level. Any standards compliant tool or product that can interface to the JMS and subscribe and publish messages can be integrated with the RIB.

There are some key functional requirements that an integrating application must follow. It must have the ability to do the following:

General RIB to Fusion Middleware Architecture

Surrounding text describes Chapter_10.png.

The Oracle Fusion Middleware products, such as ESB and BPEL, use a common standard JMS Adapter. This adapter can be used to connect to the RIB certified JMS Provider and topics.

The JMS topics that the RIB creates for publication and subscription are detailed in the Oracle Retail Integration Bus Integration Guide, along with all of the message payloads for each message family.

The RIB html encodes each message payload and inserts it into the RIB messages envelope. Each message has a JMS user-defined property called threadValue that is required to be set on all in-bound messages. In a multi-channel message flow, the subscriber will need to set the message selector to an appropriate threadValue to maintain message publication sequencing.

The xml schema definitions for the payloads and the RIB Messages envelopes are packaged and shipped with the RIB.

See the Oracle Retail Integration Bus Integration Guide for more information.

The RIB JMS topic names and message flows between the RIB adapters for each of the Oracle Retail applications are defined in the rib-integration-flows.xml file. This file is the single source of truth that the RIB release uses at configuration and run-time. It is required to be accessible within each RIB deployment: http://<server>:<port>/rib-func-artifact/rib-integration-flows.xml. During installation and configuration, this file is deployed as a part of the functional artifact war file.

General Process of Integration

The general process for custom integration with the RIB:

  • Determine the Message Family of interest (such as Items)

  • Use the Oracle Retail Integration Bus Integration Guide to determine the message payloads and topics involved.

  • Configure the JMS Adapter within the tool (ESB/BPEL) to the RIB JMS provider.

  • Understand the RIB envelope (RibMessage.xsd) and the message type relationship.

  • Understand the payload for each message. These are html-encode inside the RibMessage envelope.

    • The RIB XSDs are included in the Oracle Retail Integration Bus Integration Guide as well as the Function Artifacts war file.

  • Understand the Oracle Retail Application API mappings. These are included in the Oracle Retail Integration Bus Integration Guide. This is important because the XSDs do not reflect the actual optional/mandatory state of an element. For historical reasons (to support previous releases), all elements in the XSD that have been added since RIB version 10.3 have been optional at the message level.

    • The Mapping reports are included with the Oracle Retail Integration Bus Integration Guide.

    • Each of the Oracle Retail applications has documentation on the behavior of the API.

  • All RIB messages must have the message property threadValue set by publishing applications, and in a multi-channel message flow, the subscriber will need to set the message selector to an appropriate threadValue to maintain message publication sequencing.

    • Understand the relationship between the threadValue and multiple-channels within the RIB. See "Multiple Channels" in the Oracle Retail Integration Bus Operations Guide.

  • Many of the Message Families have a RIB Component called a TAFR involved. Understand what a TAFR is and how it works within a message flow. This can be very involved in some families, and can actually create additional mandatory elements with a message that may not be obvious. See "Transform, Filtering and Routing" in the Oracle Retail Integration Bus Operations Guide.

  • The Oracle Retail Integration Bus Integration Guide for each family has the general functional specifications for the TAFRs involved with that family.

  • Understand the volume characteristics of a message family. The RIB is designed to handle retail volumes, so a poorly designed subscriber can have a huge impact on the JMS. Conversely, a publisher that tries to use the RIB as a bulk transfer mechanism is also inappropriate.

Configure FWM JMS Adapter to RIB AQ JMS

There is nothing special about configuration of the JMS Adapter in either ESB or BPEL to now connect to the Resource Provider configured to the RIB AQ JMS. (See Oracle Service Oriented Architecture Suite tutorials and documentation.) RIB AQ must be configured as foreign JMS, while RIB is deployed on WebLogic server.

For information about configuring foreign JMS adapter, see the WebLogic® Application Server Administrator's Guide 12c Release 1 (12.2.1.3.0).