Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What's the best way to use SOAP with Ruby?

A client of mine has asked me to integrate a 3rd party API into their Rails app. The only problem is that the API uses SOAP. Ruby has basically dropped SOAP in favor of REST. They provide a Java adapter that apparently works with the Java-Ruby bridge, but we'd like to keep it all in Ruby, if possible. I looked into soap4r, but it seems to have a slightly bad reputation.

So what's the best way to integrate SOAP calls into a Rails app?

like image 609
jcoby Avatar asked Sep 02 '08 18:09

jcoby


2 Answers

I built Savon to make interacting with SOAP webservices via Ruby as easy as possible.
I'd recommend you check it out.

like image 166
rubiii Avatar answered Oct 19 '22 03:10

rubiii


We used the built in soap/wsdlDriver class, which is actually SOAP4R. It's dog slow, but really simple. The SOAP4R that you get from gems/etc is just an updated version of the same thing.

Example code:

require 'soap/wsdlDriver'  client = SOAP::WSDLDriverFactory.new( 'http://example.com/service.wsdl' ).create_rpc_driver result = client.doStuff(); 

That's about it

like image 23
Orion Edwards Avatar answered Oct 19 '22 02:10

Orion Edwards