If you want to manually generate the XML you send to the web service (for example, using Rails .rxml template) you must pass the web service method a hash with keys the parameter elements and values your custom generated strings.
Example:
factory = SOAP::WSDLDriverFactory.new(endpoint_url) webservice = factory.create_rpc_driver param1 = XSD::QName.new(nil, "param1") param2 = XSD::QName.new(nil, "param2") webservice.updateSomething(param1 => "<a>some</a><b>thing</b>", param2 => "<c>some more<c>")
This is wrong - the angle brackets will be entity-escaped: < will become < and > >
webservice.updateSomething("<param1><a>some</a><b>thing</b></param1><param2><c>some more<c></param2>")