Thursday 25 December 2014

Oracle B2B 12c - HTTP Generic Channel with transport callout

First of all, season's greetings to everyone! 

Then, let me introduce this post saying that, already in the version 11g, a generic HTTP listening channel for message posting to B2B using the HTTP protocol was available. Any configured trading partner could use this generic channel to post messages to B2B.

A single common URL was available by default:
http://[host-name]:[host-port]/b2b/httpReceiver 

In this way, a single listening channel is able to serve multiple trading partners for every HTTP communications with B2B. 

When this channel is used, the process follows the default steps for message processing, namely:

  • Sender identification (i.e. using HTTP Header);
  • Document protocol/version/type identification ;
  • Agreement identification;
  • Message processing (parsing and validation);
  • Synchronous delivery to a back-end application.

The only differentiation factor is: since this channel is generic and not configurable or even available on the list of listening channels in B2B console, make it unavailable for channel callout configuration. 

This has now changed with the 12c version.

With the version 12c of B2B is now possible to define a generic HTTP transport callout and associate it with a specific transport level callout.

As of now, this is driven by an B2B configuration Fusion Middleware property that needs to be added on Oracle Enterprise Manager Fusion Middleware Control (EM) 

b2b.HTTPTransportCalloutName= [callout name] 
i.e. b2b.HTTPTransportCalloutName= InboundGeneralCallout

Note: Access the following Oracle documentation for full instruction on how to set EM B2B properties here

This is also isolated from the regular HTTP functionality since a new ulr is provided to be able to establish this new feature. 
There is now a separated URL to be used in case of setting a generic HTTP channel callout: 
http://[host-name]:[host-port]/b2b/calloutReceiver

With this, the callout will be triggered when the message is received in this URL and EM property is configured for a valid transport callout.

Wish you all a very prosperous 2015!

2 comments:

  1. Hi, We are having some difficulty with sending/receiving the Oracle out of box acknowledgements with Rosettanet Protocol.

    Can you please detail out some steps on the configuration or sample application to be able to send a request to trading partner and received the default acknowledgement from them.

    ReplyDelete