tags:

views:

56

answers:

2

Hi

I need to create an Orchestration in BizTalk 2006r1 that will consume a WCF basicHTTP web service. Does anyone have a pointers on how to do this please? The WCF service has been created by another team but I am able to request that they create an additional endpoint with binding configuration set to make calling from BizTalk SOAP adapter possible.

I just created a simple test basicHTTP service that runs fine when tested from a command line client. When I got to BizTalk add web reference I am able to browse to the service but then get a message "Failed to add web reference" and it bombs out!

Any help gratefully received.

Thanks

Rob.

A: 

When you add a web reference, Biztalk reads the metadata from the service.

For this to work meta data exchange must be enabled, this is done with the mex tag and the behaviour configuration.

Try to browse your service to check if the meta data exchange is enabled.

Shiraz Bhaiji
yes, metadata exchange is enabled - I am able to browse from ie
Rob Bowman
Try creating VS project and adding a web reference to that, also which binding are they currently using?
Shiraz Bhaiji
A: 

There are some issues with the 'Add Webservice Reference' and the absense of targetnamespace on the root

<WSDL:Definition>

element in the WSDL.

In WCF you control this targetnamespace using a namespace declaration on the service class (not the contract) with a ServiceBehavior.

[ServiceBehavior(Namespace="urn:yournamespace")]
public class YourService : IYourContract
{  }

Try to add this and then run the 'Add Webservice Reference' wizard again.

magnus