diff options
Diffstat (limited to 'actionwebservice/lib/action_web_service/protocol/soap_protocol.rb')
-rw-r--r-- | actionwebservice/lib/action_web_service/protocol/soap_protocol.rb | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/actionwebservice/lib/action_web_service/protocol/soap_protocol.rb b/actionwebservice/lib/action_web_service/protocol/soap_protocol.rb index 253812b5e2..5e56748ae3 100644 --- a/actionwebservice/lib/action_web_service/protocol/soap_protocol.rb +++ b/actionwebservice/lib/action_web_service/protocol/soap_protocol.rb @@ -20,11 +20,17 @@ module ActionWebService # :nodoc: Request.new(self, method_name, params, service_name) end - def protocol_client(api, protocol_name, endpoint_uri, options) + def protocol_client(api, protocol_name, endpoint_uri, options={}) return nil unless protocol_name == :soap ActionWebService::Client::Soap.new(api, endpoint_uri, options) end + def create_action_pack_request(service_name, public_method_name, raw_body, options={}) + request = super + request.env['HTTP_SOAPACTION'] = '/soap/%s/%s' % [service_name, public_method_name] + request + end + private def has_valid_soap_action?(request) return nil unless request.method == :post |