Hi all, Got a question about the Ruby SOAP library. I've generated a proxy using the SOAP::WSDLDriverFactory as follows: ws = SOAP::WSDLDriverFactory.new('http://foo.com/foo.wsdl').create_rpc_driver I can see that this generates methods for each defined operation, and I use them thusly: ws.WSGetResults(:maxRecords => 1, ...) The method and parameters are translated to the appropriate XML in the SOAP message body. However, some operations require a 'User' and 'Password' to be in the message _header_. I've looked through the documentation and mailing lists with no luck. How can one achieve this? My code is listed below. Thanks! Brian Hartin ---- soaptest.rb ---- require 'soap/wsdlDriver' require 'date' ws = SOAP::WSDLDriverFactory.new('http://foo.com/foo.wsdl').create_rpc_driver ws.generate_explicit_type = true r = ws.WSHeartbeat({}) # Works because it doesn't require authentication r = g.WSGetXmlResults(:recordId => 123, :recordLimit => 200) # Doesn't work ---- Example SOAP request, according to vendor ---- <?xml version="1.0" encoding="utf-8"?> <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Header> <!-- I don't know how to populate the header --> <WSAuthHeader xmlns="http://foo.com/WSFooSvc"> <User>string</User> <Password>string</Password> </WSAuthHeader> </soap:Header> <soap:Body> <WSGetXmlResults xmlns="http://foo.com/WSFooSvc"> <recordId>int</recordId> <recordLimit>int</recordLimit> </WSGetXmlResults> </soap:Body> </soap:Envelope> **************************************************************************** This email may contain confidential material. If you were not an intended recipient, Please notify the sender and delete all copies. We may monitor email to and from our network. ****************************************************************************