Untill now I used soap4r as my SOAP-client with Ruby 1.8.x, but now I am moving on to Ruby 1.9.x. Unfortunately soap4r doesn\'t work with Ruby 1.9.x I just get the \"invalid
Savon abstracts the XML part into a Ruby Hash. Have a look: http://github.com/rubiii/savon
If that is the issue with handsoap then you can use the hashie gem with handsoap. Hashie converts the xml elements to instance method calls, if that helps.
Soap4R is a pain but I like it for one reason, that is the standalone soap server that it provides. It makes testing external soap services so much easier by building your own soap server in a snap that just mocks the response so that, one you don't have to make request to external soap server for integration tests and second it doesn't leaves the code related with soap client untested.