My question may first of all seem to have a duplicate but i have hit something that has suprised me. Yaws Webserver
comes with a complete set SOAP example, but when i tried running it as is, this is what i get:
In text form, this is what i see in the shell:
1> inets:start(). ok 2> yaws_soap_lib:call("http://www.webservicex.net/WeatherForecast.asmx?WSDL","GetWeatherByPlaceName",["Boston"]).
=ERROR REPORT==== 15-Apr-2013::20:32:11 === Call to tuple fun {erlsom_parse,xml2StructCallback}. Tuple funs are deprecated and will be removed in R16. Use "fun M:F/A" instead, for example "fun erlsom_parse:xml2StructCallback/2". (This warning will only be shown the first time a tuple fun is called.) {error,{decoding,"Malformed: Illegal character in prolog"}}
3> yaws_soap_lib:call("http://www.webservicex.net/WeatherForecast.asmx?WSDL","GetWeatherByPlaceName",["Boston"]). {error,{decoding,"Malformed: Illegal character in prolog"}} 4>
erlsom
i pretty think for the XML parsing. But, i can hardly use erlsom
single-handedly to offer soap services. This is an ugly hack, but here's how I deal with SOAP requests:
Write a function/module that wraps the following: