posted on Monday, June 27, 2005 6:12 PM
by
Benjy
BTS Diary 3 - Now to tame Enterprise Library
Solving the Web Service communication issue: Thanks to a great post from Matt Meleski on passing complex messages to web services, we sorted the problem with communicating between the Orch and the WS. Basically we were very close. I sort of knew we werent doing the correct thing by assigning the WS request message directly with the Target Data message and that we should be dealing with variable assignation instead. As it turns out, I was right. We first have to load the incoming message (or the transformed one, whichever you want) into an XmlDocument variable. Then if you are using the XmlDocument as a parameter in the webservice, you can simply assign the web service parameter to the .OuterXml of the variable. Matt gives more examples of using strings as web service arguments as well as complex types as arguments.
But cannot handle EnterpriseLibrary.Data: Looking through Andy Morrisons blog on using Ent Lib Logging Block was fine and useful, but it does not address the beast that happens to be lurking in the new DAAB. The event log always says that it failed to load the assembly even though its clearly marked in the BTSNTSVC.exe.config. Actually the problem is in the dataConfiguration.config file since the BTSNTSVC file points to this and it would appear that BTS is able to go to the dataConfiguration file but just cannot read the config section properly. The funny thing is that on its own, the new DAAB and the web service work fine (when tested using NUnit) but when called from BizTalk they start acting funny.
Weird huh? We're going to give it just one more shot tomorrow for a couple of hours and then we'll scrap Ent Lib completely. Will keep you folks posted.