1

問題は解決しましたが、なぜこの ** 問題が発生したのかまだ理解できません。

少し説明: いくつかのパラメーターを使用して、SOAP サーバーを呼び出す必要があります。

wsdl webservice からの定義は次のとおりです。

Method : "lanceDecodage"
 Jeton: xsd:string
 ID_JOB: xsd:string
 Priorite: xsd:int

私はこれを次のようにしたかった:

@response_second = Savon.client(server).request(:lanceDecodage) do
      soap.body =  {
       :jeton => "ABCDEF"
       :ID_JOB => "123"
       :Priorite => 456
      }
    end

しかし、サーバーは、「Priorite」パラメーターを指定しなかったと言っています。

したがって、この醜いリクエストはうまくいきました:

 @response_second = Savon.client(server).request(:lanceDecodage) do
          soap.body =  
            '<Jeton>ABCDEF</Jeton><ID_JOB>' + sound.id_job.to_s + '</ID_JOB><Priorite xsi:type="xsd:int">456</Priorite>'
        end

'xsi:type="xsd:int"' の問題は何でしたか? Integer の型を指定する必要がありましたか? WebService に問題はありますか?

ご回答ありがとうございます。

4

1 に答える 1

0

本当に良い答えはありませんが、どうやら問題はくだらないSOAPサービスにあるようです...ご回答ありがとうございます

于 2012-08-16T09:43:37.930 に答える