How to instantiate SAVON::Client object from a wsdl stored locally

Hi,

I am using SAVON to consume webservices in my project. Savon lib uses
the hosted wsdl to instantiate SAVON::Client object.

I have to consume a WCF .net webservice. Its hosted WSDL does not have
the message info ie. request-response message information. It is hidden.
Thus, the SAVON::Client object instantiated from the hosted wsdl is not
able to generate stubs of the methods/soap actions supported by the
wsdl.

So is there any way to instantiate SAVON::client from a wsdl stored at a
physical location instead of using the hosted one.

Or is there any way to create stubs from a WSDL stored locally using
SAVON gem.

I am using ruby 1.9.2. I tried using SOAP4r but no success. SAVON did
work with ruby 1.9.2 but with the hosted wsdls that do have messages
hidden.

Thanks,
Payal P.

Have you tried a file:// url?

Is there some reason you want the WSDL? Savon can work fine without it.

Have I mentioned I hate SOAP? :slight_smile:

Hi Payal,
I guess that your problem must have been solved by now. If not then
please refer code snippet below:

 Savon::Client.new do
  wsdl.document = path_to_wsdl
end

Thanks,
Abhijit


If life was fair, Elvis would be alive and all the impersonators would
be
dead.