no se pueden establecer los parámetros del encabezado SOAP en la llamada savon

Estoy usando Savon 2.2 para hacer llamadas SOAP.

Inicializar:

  client = Savon.client(
  wsdl: SOAP_WSDL,
  endpoint: SOAP_URL)

Puedo hacer una llamada SOAP como esta y funciona bien:

resp =  client.call(:login, message: { username: SOAP_USER, password: SOAP_PASSWORD })

Ahora necesito hacer otra llamada que requiera configurar algunos parámetros en el encabezado SOAP. De la documentación en savorb.com encontré que debería usar el método de solicitud:

 response = client.request :get_user_info do
    soap.header = { :session_id => sid }
 end 

Pero recibo un error que dice que el método de solicitud no existe:

undefined method `request' for #<Savon::Client:0x007f1560f80490>

¿Tengo una versión diferente de savon o qué? Intenté usar "call" en lugar de "request", pero luego obtengo:

ArgumentError - wrong number of arguments (1 for 2):
gem) savon-2.2.0/lib/savon/options.rb:35:in `method_missing'
(gem) savon-2.2.0/lib/savon/block_interface.rb:20:in `method_missing'
app/models/tool.rb:23:in `block in doUpload'

Respuestas a la pregunta(3)

Su respuesta a la pregunta