10.2. SOAP, XML-RPC, and ActionWebService

In the previous chapters you learned about creating RESTful Rails applications, which effortlessly allow you to expose a Web Service as well. In this chapter, you learned about how to consume these Web Services from Ruby, through ActiveResource. It's fair to state that as far as REST is concerned, Rails gets you covered from both the publishing and the consuming ends.

The bad news is that REST is not the most popular type of architectural style for Web Services, yet. In fact, a good part of the Enterprise world is still using and adopting "Big Web Services" or SOA (Service-Oriented Architecture) Web Services. In fact, REST Web Services are not currently very popular among .NET and Java development teams. Though this is bound to change, at the present, you may be forced at times to step outside of the REST boundaries, where things are less smooth and simple.

Thankfully both Ruby and Rails provide tools to interoperate with these other types of Web Services. When you need to publish a SOAP-based or XML-RPC Web Service from Rails, you can use the ActionWebService plugin, available as the actionwebservice gem (online at http://rubyforge.org/projects/aws). ActionWebService used to be part of the Rails core, before REST found its way to the heart of the framework and the community.

AWS tries to simplify the process of publishing APIs via WSDL (Web Service Definition Language), based on the SOAP or XML-RPC protocols.

A fairly complete manual ...

Get Ruby on Rails® for Microsoft Developers now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.