次のように、この属性(xmlns:wsa = "http://www.w3.org/2005/08/addressing")をsoapヘッダーに追加する必要があります。
<env:Header xmlns:wsa="http://www.w3.org/2005/08/addressing">
</env:Header>
Savonを使用してこれを行うにはどうすればよいですか?
次のように、この属性(xmlns:wsa = "http://www.w3.org/2005/08/addressing")をsoapヘッダーに追加する必要があります。
<env:Header xmlns:wsa="http://www.w3.org/2005/08/addressing">
</env:Header>
Savonを使用してこれを行うにはどうすればよいですか?
私のエンドポイントはこれを受け入れるので、私の場合、実際に問題に対して別の回避策を講じることができました。
<env:Header>
<wsa:Action xmlns:wsa="http://www.w3.org/2005/08/addressing">value</wsa:Action>
</env:Header>
元の質問を調査すると、Savonの作成者からの回答は次のとおりです。
「ねえマグネ、
ヘッダータグと本文タグを作成するコードを見ると、現時点ではモンキーパッチなしで属性/名前空間を追加することはできないようです。
https://github.com/rubiii/savon/blob/v0.9.7/lib/savon/soap/xml.rb#L151
それでもこの機能が必要な場合は、チケットを開いてください。私に何ができるかがわかります: https ://github.com/rubiii/savon/issues
私は現在、ライブラリを改善するための新しいアプローチをとることに深く関わっています。そのため、いつ問題を解決できるかわかりません。しかし...私はこの機能が実装されるまで役立つはずの小さなモンキーパッチを一緒にハッキングしました:
https://gist.github.com/1698636
乾杯、ダニエル」
次のように、リクエストに独自の名前空間を追加できます。
resp = client.request :soap_action do
soap.namespace['xmlns:wsa'] = 'http://www.w3.org/2005/08/addressing'
end
foo = client.request do soap.header ['xmlns:wsa'] ='http://www.w3.org/2005/08/addressing' end