Проблема Savon, связанная с коррумпированными запросами - PullRequest
1 голос
/ 13 августа 2011

Я обновил свою версию Savon до 0.9.6, и запросы к моему серверу кажутся некорректными.До обновления я использовал Savon 0.9.2.

У меня такая же проблема, как у кого-то, упомянутого в посте ниже, однако она отличается тем, что повторяющиеся элементы содержат полные объекты.Я пытался использовать массивы, но не повезло. Савон: Как я могу указать пользовательский XML в теле хэша для запроса SOAP?

Запросы построены следующим образом:

#Address object
address =  {
      'AddressCode' => 'Dest',
      'Line1' => '1234 Anywhere Street',
      'City' => 'Anywhere',
      'Region' => 'Somewhere',
      'PostalCode' => '12345',
      'Country' => 'USA'
          }
#Building the request
request = {"Request" => {
      'CompanyCode' => 'DEFAULT',
      'DocType' => 'Word',
      'Addresses' => {'BaseAddress' => [address]}
          }}

0,9.6 (не работает) Часть запроса

   <ser:Request>
            <ser:CompanyCode>DEFAULT</ser:CompanyCode>
            <ser:DocType>Word</ser:DocType>            
            <ser:Addresses>
               <ins0:Addresses>
               <ins0:BaseAddress>AddressCodeDestLine11234 Anywhere StreetCityAnywhere RegionSomewherePostalCode12345CountryUS</ins0:BaseAddress>
            </ser:Addresses>           
         </ser:Request>

0.9.2 (рабочая) Часть запроса

<ser:Request>
    <ser:CompanyCode>DEFAULT</ser:CompanyCode>
    <ser:DocType>Word</ser:DocType>            
    <ser:Addresses>
       <ser:BaseAddress>
          <ser:AddressCode>Dest</ser:AddressCode>
          <ser:Line1>1234 Anywhere Street</ser:Line1>
          <ser:City>Anywhere</ser:City>
          <ser:Region>Somewhere</ser:Region>
          <ser:PostalCode>12345</ser:PostalCode>
          <ser:Country>US</ser:Country>
       </ser:BaseAddress>
    </ser:Addresses>           
 </ser:Request>

У кого-нибудь есть идеи?Буду очень признателен за любые советы, которые вы готовы дать.

Спасибо!

...