Wednesday, April 27, 2011

B2B routing messages to SOA Composite using Document Routing ID


One of the queries I recently got from my client was with regard to B2B engine routing messages to SOA Composite process. They had implemented routing with document definitions for 4010 and 4010V to different composites. They wanted to route both 4010 and 4010V messages to a single composite process.  What was the easiest way to implement these changes across processes and different trading partners?
I will list down the changes that need to be done
  1. Add a common Routing ID for 4010 and 4010V document definitions.
1)      Login to B2B Console .Go to Administration -->Document
Document Protocols -->EDI_X12 --> 4010 -->850 -->GEO_850_def
And 4010VICS --> 850 -->GEO_850_def

2)      Update the Routing. Go to Routing sub tab
Document Routing ID -->GEO_850_Routing

  1. In the composite.xml of the composite process update binding.b2b docRef value
Old Entry in composite.xml
<service name="Read850Msg" ui:wsdlLocation=" Read850Msg.wsdl">
    <interface.wsdl interface="http://www.oracle.com/integration/b2b/ Read850Msg /#wsdl.interface(B2B_receive_ptt)"/>
    <binding.b2b docRef="EDI_X12--4010--850--GEO_850_def"/>
  </service>

Modified entry  in composite.xml

<service name="Read850Msg" ui:wsdlLocation=" Read850Msg.wsdl">
    <interface.wsdl interface="http://www.oracle.com/integration/b2b/ Read850Msg /#wsdl.interface(B2B_receive_ptt)"/>
    <binding.b2b docRef="DOC_ROUTING_ID--GEO_850_Routing"/>
  </service>

a.    Deploy the process.
b.    Test the B2B with both 4010 and 4010V files/messages. It will get routed to the single composite process.
Note:- In case the files are not getting routed you will need to re-deploy the agreements for trading partners for which testing is being carried out.

No comments: