2. Gateway Functions - An Overview

2.1 Introduction

Integration of different applications and solutions is a key area in today’s systems. A variety of specialized applications deployed on disparate platforms and using different infrastructure need to be able to communicate and integrate seamlessly with Oracle Banking Payments in order to exchange data. The Oracle Banking Payments Integration Gateway (referred to as ‘Gateway’ in the rest of the document) will cater to these integration needs.

The integration needs supported by the Gateway can be broadly categorized from the perspective of the Gateway as follows:

2.2 Inbound Application Integration

Oracle Banking Payments Inbound Application Gateway provides XML based interfaces thus enhancing the need to communicate and integrate with the external systems. The data exchanged between Oracle Banking Payments and the external systems will be in the form of XML messages. These XML messages are defined in FCUBS in the form of XML Schema Documents (XSD) and are referred to as ‘FCUBS formats’

For more information on FCUBS formats refer the Message Formats chapter in this User Manual.

FCUBS Inbound Application Integration Gateway uses the Synchronous and Asynchronous Deployment Pattern for addressing the integration needs.

The Synchronous Deployment Pattern is classified into the following:

Asynchronous Deployment Pattern is:

2.2.1 EJB Based Synchronous Deployment Pattern

The Enterprise Java Beans (EJB) deployment pattern will be used in integration scenarios where the external system connecting to Oracle Banking Payments is ‘EJB literate’, i.e., the external system is capable of interacting with Oracle Banking Payments based upon the EJB interface. In this deployment pattern, the external system will use the RMI/IIOP protocol to communicate with the Oracle Banking Payments EJB.

In this deployment pattern the EJB displayed by Oracle Banking Payments will be a stateless session bean. The actual request will be in the form of an XML message. After the necessary processing is done in Oracle Banking Payments based on the request, the response is returned to the external system as an XML message. The transaction control for the processing will stay with the Oracle Banking Payments EJB.

2.2.2 Web Services Based Synchronous Deployment Pattern

The web services deployment pattern will be used in integration scenarios where the external system connecting to Oracle Banking Payments wants to connect using standards-based, inter-operable web services.

This deployment pattern is especially applicable to systems which meet the following broad guidelines:

In this deployment pattern, the external system will use the SOAP (Simple Object Access Protocol) messages to communicate to the Oracle Banking Payments web services.

The services displayed by Oracle Banking Payments are of a ‘message based’ style, i.e., the actual request will be in the form of an XML message, but the request will be a ‘payload’ within the SOAP message. After the necessary processing is done in Oracle Banking Payments based on the request, the response is returned to the external system as an XML message which will be a ‘payload’ within the response SOAP message. The transaction control for the processing will stay with the Oracle Banking Payments.

2.2.3 HTTP Servlet Based Synchronous Deployment Pattern

The HTTP servlet deployment pattern will be used in integration scenarios where the external system connecting to Oracle Banking Payments wants to connect to Oracle Banking Payments using simple HTTP messages.

This is especially applicable to systems such as the following:

In this deployment pattern, the external system will make an HTTP request to the Oracle Banking Payments servlet.

For this deployment pattern, Oracle Banking Payments will display a single servlet. The actual request will be in the form of an XML message. This XML message is embedded into the body of the HTTP request sent to the Oracle Banking Payments servlet. After the necessary processing is done in Oracle Banking Payments based on the request, the response is returned to the external system as an XML message which is once again embedded within the body of the response HTTP message. The transaction control for the processing will stay with the Oracle Banking Payments.

2.2.4 MDB Based Asynchronous Deployment Pattern

The MDB deployment pattern is used in integration scenarios where the external system connecting to Oracle Banking Payments wants to connect to Oracle Banking Payments using JMS queues.

This is especially applicable to systems such as the following:

Here external system sends messages in XML format to request queue on which an MDB is listening. When a message arrives on the queue, it is picked up for processing. After the necessary processing is done in Oracle Banking Payments, based on the request, the response is sent to the response queue as an XML message

2.3 Outbound Application Integration

The Outbound Application Integration is also called the Oracle Banking Payments Notify Application Integration layer. This application layer sends out notification messages to the external system whenever events occur in Oracle Banking Payments.

The notification messages generated by FCUBS on the occurrence of these events will be XML messages. These XML messages are defined in FCUBS in the form of XML Schema Documents (XSD) and are referred to as ‘FCUBS formats’

For more information on FCUBS formats refer the Message Formats chapter in this module.

2.4 Responsibilities of Integration Gateway

The primary responsibilities of Oracle Banking Payments Integration Gateway include the following:

2.5 Deployment of Oracle Banking Payments Integration Gateway

Message communication - incoming or outgoing from/to an external system in Oracle Banking Payments will happen only through an Oracle Banking Payments Integration Gateway. Hence, it becomes the first point of contact or last point of contact with the database in message flow. The Oracle Banking Payments Integration Gateway can be deployed to support both the distributed and single schema deployments of Oracle Banking Payments:

2.6 Deployment Patterns for Application Integration

Business Integration Needs Nature of Integration Oracle Banking Payments Deployment Pattern Remarks
Inbound Transac­tions into Oracle Banking Pay­ments Synchronous Oracle Banking Payments EJB Recommended
Oracle Banking Payments HTTP Servlet This can be used if the exter­nal system cannot communi­cate to Oracle Banking Payments using EJB.
Oracle Banking Payments Web Services This can be used if the exter­nal system chooses to com­municate only through Web Services.
Asynchro­nous Oracle Banking Payments MDB This can be used if the exter­nal system chooses to com­municate only through JMS queues
Inbound Queries into Oracle Bank­ing Payments Synchronous Oracle Banking Payments EJB Recommended
Oracle Banking Payments In Servlet This can be used if the exter­nal system cannot communi­cate to Oracle Banking Payments using EJB.
Oracle Banking Payments Web Services This can be used if the exter­nal system chooses to com­municate only through Web Services.
Asynchro­nous Oracle Banking Payments MDB This can be used if the exter­nal system chooses to com­municate only through JMS queues
Handoffs from Oracle Banking Payments Asynchro­nous Oracle Banking Payments Notify Recommended