Ответы для людей, которые переходят по этой ссылке в поисках ответа на этот вопрос (хотя qn 2 года).
Знание версий soap4r и ruby подтвердило бы мой ответ, но если вы используете soap4r (1.5.5 или 1.5.8) и Ruby (1.8.7 или выше), соединение с удаленной конечной точкойсделал либо httpclient (gem), либо встроенный netHttpClient (файл netHttpClient.rb в файле soap4r).Оба используют методы запуска и отправки HTTP через блок для отправки запроса и получения ответа.И когда http-соединение запускается через блок, оно закрывается, как только блок заканчивается.
Ссылка и дальнейшее чтение