I've recently came across scenario, where I needed to consume webservice (svc) from BizTalk without the use of orchestrations.
Consuming is simple enough - in BizTalk Project, select the "Add Generated Items", select WCF and finish the wizard. Then delete the ODX file (we're not using orchestration). Deploy project to BT so that we have schemas in place and use one of the generated bindings to create the Send port.
Create a testing Receive port (don't forget to use XmlReceive pipeline on the location).
Send a test message and... Boom! BT tells you that the call has failed due to routing failure - missing subscriber.
If you inspect the error, you'll see that it's not the call TO the service, but rather the response FROM the service that is failing - and fair enough, we don't have subscriber for the response!
To correct this situation, create another Send port and set its Filter criteria to:
BTS.MessageType == http://yournamespace#MethodNameResponse
If you're not sure about the message type, just inspect the Routing Failure report and you'll find it there.
Thursday, April 24, 2014
Subscribe to:
Posts (Atom)