The National Weather Service web service returns XML data that does not conform to the latest security standards (first reported in 2005), so clients using .NET Framework 1.1 and later report an error ("The server committed an HTTP protocol violation..."). The solution is to edit the proxy class generated by Visual Studio to process the returned data according to an older version of the protocol.
The web service intermittently throws, "Unable to read data from the transport connection." This appears to be a timeout error which I work around by requesting less data at a time, multiple times.
I noticed errors on 2011-09-26; the web service URL changed from http://www.weather.gov/xml/DWMLgen/wsdl/ndfdXML.wsdl to http://graphical.weather.gov/xml/SOAP_server/ndfdXMLserver.php?wsdl, and there were breaking changes to NDFDgen(). I struggled with Visual Studio, so I deleted the old web reference, closed and reopened VS, added the new web reference, modified NDFDgen(), and then it worked (without editing the proxy class to adjust the protocol version, at least there’s that).
Post a Comment