Wednesday, 5 March 2014

BizTalk : Defining multiple database ReceiveLocation with same db connection string



BizTalk : Defining multiple database ReceiveLocation with same db connection string

BizTalk does not allow us to create the  multiple receive location with Same URI, At design time it validate the URI and if it matches with any receive location then it throw Validation error.
But there may be some requirement where we might need multiple receive location with same URI like multiple database receive location with same database URI and each polling to different set of data (different stored procedure/package.)

So for this requirement, we can implement the multiple receive location with different pollingid. So at design/run time it won’t throw any validation error as the URI is different. The connectionstring with PollingID really doesn’t make any difference and it won’t create any issue while connecting database.

Ex . If I have two receive location polling database

ReceiveLocation1   ->   URI  ->  oracledb://goDEV1/?PolllingID=1111

ReceiveLocation2  ->    URI  ->   oracledb://goDEV1/?PolllingID=2222

ReceiveLocation3  ->    URI ->    oracledb://goDEV1/?PolllingID=3333

BizTalk Oracle/SQL execution error on ReceiveLocation : Action http://Microsoft.LobServices.OracleDB



BizTalk Oracle/SQL execution error on ReceiveLocation


When we try to call SQL/Oracle StoredProcedure/package from the ReceiveLocation with Default PollingAction generated then it might give error as  we need to add “Polling” in the name of package or stored procedure.


The Messaging Engine failed to add a receive location "Zim.EAI.Framework.RL_ReTestGet" with URL "oracledb://goDEV1/?PolllingID=1111" to the adapter "WCF-Custom". Reason: "System.NotSupportedException: Action "http://Microsoft.LobServices.OracleDB/2007/03/EBT/Package/BL_GO_PCK/GETDATA_XML" is invalid.
   at Microsoft.Adapters.OracleDB.OracleDBInboundContract..ctor(OracleDBConnection connection, IOracleCommonUDTHelper oracleUdtHelper, MetadataLookup metadataLookup)




Auto Generated Action :

Correct Action :