Simply a programmer
A software development blog by Tim Jones
Friday, February 18, 2011
“Prism is not a MVVM framework!” and other goodness from the MVVM Smackdown
Thursday, September 9, 2010
WCF BasicHttpBinding does not always mean W3C SOAP 1.1
I spent a couple hours tonight troubleshooting why a vendor's SOAP 1.1 service couldn't talk to WCF's BasicHttpBinding. In this case I was getting the exception:
Server returned an invalid SOAP Fault.
Inner Exception: XmlException: Message=End element 'Fault' from namespace 'http://schemas.xmlsoap.org/soap/envelope/' expected. Found element 'tla:billybob' from namespace 'http://schemas.xmlsoap.org/soap/envelope/'. Line 2, position 568.
Was the service sending .NET bad XML? What’s the deal? Well, the exception goes into more detail complaining about an unexpected element.
W3C says regarding SOAP 1.1. faults:
Other Fault subelements MAY be present, provided they are namespace-qualified.
Turns out it the service is just fine according to W3C since these extra fault elements were namespace-qualified. However, BasicHttpBinding is more restrictive than the SOAP spec. Man, this is giving me a flashback of .NET being picky with date-parsing! The issue was that .NET only supports SOAP 1.1 in this binding if it's also WS-I BP 1.1 compliant:
R1000: When an ENVELOPE is a Fault, the
soap:Faultelement MUST NOT have element children other thanfaultcode,faultstring,faultactoranddetail.
I calmly pointed out to said vendor that I thought it would be a good idea to update their SOAP endpoint to be a little more friendly with .NET. We’ll see!
Thursday, October 22, 2009
SharePoint 2009 Conference - Session highlights from Rafael
Wednesday, August 27, 2008
Using SharePoint for Extranets
My article, Using SharePoint for Extranets, was just published in the September issue of Windows IT Pro magazine. In my post about importing files into SharePoint, I hinted that I had replaced a custom extranet with a WSS 3.0 extranet. This article is a brief summary of what I learned about configuring SharePoint as an extranet platform during that project.
Only after this experience did I decide that something needed to be written about this subject. Specifically, I spend quite a bit of time advocating zone address consistency (having 2 or more authentication zones use the same site address). I was a bit disappointed that SharePoint ignored IIS's IP address binding feature, which makes collaboration much easier when multiple zones are used, or when SSL is needed (especially for extranets).
It's brief because it had to be. As you would be able to tell by reading some of my posts, I lean towards using more words than less to get my points across. When I first submitted the article to them, it was over 4000 words. I had to delete 1500 words to fulfill the article submission requirements. Of course this almost required a complete rewrite, and it's most likely the reason that the online edition of the article contains an extra sidebar and 2 graphics that wouldn't fit in the printed edition.
The gracious editorial staff (thanks Gayle!) over at Windows IT Pro agreed to allow the public access to the online edition of the article for about 2 weeks so I can share it with you.