rubiii/savon — Issue #261: Savon adds ins0 namespace on soap request no matter what.
Author: konung
Created: 2012-02-03 23:16:16+00:00
State: open

Hi Rubii.

Having an issue that's driving me crazy - and can't find a way arround it other than doing soap.xml = " "

It's easier to explain with an example ( I took out wsse security info and some payload stuff)

Here is what I need to get :

this is cliped - not relevant

and here is what I'm getting

this is cliped - not relevant

My main problem is that I can't properly assing attributes to env:Envelope tag ( the rest are pretty easy to build actually)
and that no matter what I do - I can't get rid of the ins0 namespace. Well actually - I can, but then if I use "ProcessMesage" as a soap action instead of :process_message - savon adds ins0 no matter what, and if I use :process_message - get the proper tag but it's not camel cased. and if I do `Gyoku.convert_symbols_to :camelcase` then ins0 namespace start appearing again.

I know I can just override soap.xml which is what I'm doing right now - but it's just seems like a waste!

Any advice would be appriciated.

here is my current code

client = Savon::Client.new do
wsdl.document = INTERACTIVE_WSDL
#wsdl.element_form_default = :unqualified
#wsdl.endpoint = INTERACTIVE_ENDPOINT
#wsdl.namespace =INTERACTIVE_NAMESPACE

wsse.credentials INTERACTIVE_USERNAME, INTERACTIVE_PASSWORD
wsse.timestamp = true
wsse.created_at = Time.now + 25600
wsse.expires_at = Time.now + 25900
Gyoku.convert_symbols_to :camelcase
end

response = client.request :process_message do |soap|

soap.header = {
"payloadManifest" => {
"manifest/" => "",
:attributes! => {
"manifest/" => {
:contentID => "Content0",
:element => "GetStandardCodes",
:namespaceURI => "http://www.starstandards.org/STAR"}
}
},
:attributes! => {
"payloadManifest" => {
:xlmns => "http://www.starstandards.org/webservices/2005/10/transport"}
}
}

soap.body = "blah blah"
end