Alessandro Damiani Blog

Deliri tecnologici e varie amenità da un aspirante apprendista stregone ;)

September 2008 - Posts

Soap version: Where can I look for it?

Creating webservices with WCF is very easy. Tell to VS 2008 "create a wcf service for me" and it's done: you are the proud owner of a  Service over WSHttpBinding.

Wcf hides all the low level stuff to the developers making all the "dirty" job in a really transparent way.

This is great but what about your java colleague that come asking for a web service in Soap 1.1 ? In a "soa world" this happens..

So you grab the dig and start googling... Maybe you will get here to read that your WSHttpBinding web services is Soap 1.2 compliant

Nice to know it, but how you can say it looking at the message? It's not so intuitive but you can solve the "dilemma" looking the soap envelope

If you read this: <s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"> you are using a Soap 1.1 envelope to describe your message.

Else : <s:Envelope xmlns:s="http://www.w3.org/2003/05/soap-envelope"> then you are on soap1.2 envelope

In a wsdl you can have endpoint using different bindings (WSHttpBinding and CustomBinding as well) looking at the wsdl definition, you will find together

<wsdl:definitions name="Service1" targetNamespace="http://tempuri.org/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"

…..

xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/"

..>

In the binding description you can see the reference to the first one or the second one schema. A message exchanged on that bindig will have the soap envelope definition you see before…

PS

About the Java colleague, in one of the next post I'll try to satisfy his request ;)

New start , I'm here again

Hi to everyone,

I'm here ready to start again in the new Biztalkia's adventure on his brand new charming site ..

Ok, let's go, I hope to be an active part of this new community experience and in english

So sorry for my mistake , probably it will be often a little "out of order"...  ;)

 

      see you

              A.