title: Using SOAP and other Standard Libraries in Ruby 1.9.2
body: <p>So, I recently upgraded to 1.9.2 Ruby, having used 1.8.7 for forever (I wanted to try out Rails 3).  </p>
  
  <p>The BIGGEST problem I'm having is that none of my SOAP require statements are working...I have things like:</p>
  
  <pre><code> require 'soap/rpc/driver'
   require 'xsd/qname'
   require 'soap/wsdlDriver'
   require 'ftools'
  </code></pre>
  
  <p>Even ftools isn't working, but I THINK (look at the Ruby source) that this became 'fileutils'?   But I don't see anything similar for SOAP.....has it just been removed? </p>
  
  <p>If so...what should I do? Is there any plug ins that do essentially the same thing?</p>
  
  <p>My code is like:</p>
  
  <pre><code> require 'soap/wsdlDriver'
       def send_package
       adi_url = "ftp://anonymous:ads123@#{APP_CONFIG['pcms_ip']}/#{self.id}/original/ADI.XML" 
  
  
       cl0 = SOAP::WSDLDriverFactory.new(APP_CONFIG['corba_bridge'])
       driver = cl0.create_rpc_driver
       driver.streamhandler.client.receive_timeout = 10
       x = driver.exportPackage2(self.name+self.id.to_s, adi_url, "NS2.PackageFactory")
       log x
  
       if x.to_s =~ /ERROR/
            raise x.to_s
       end
   end
  </code></pre>
  
  <p>and</p>
  
  <pre><code> require 'soap/rpc/driver'
   require 'xsd/qname'
   def get_self_offering_ids(wsdl, namespace)
        ret = []
        input = {"#{namespace}:includeAssetMetadata" =&gt; 'true'}
  
        begin
             driver = SOAP::RPC::Driver.new(wsdl, namespace)
             driver.add_document_method('GetAllOfferingsRequest', "OpenStreamVOD#getAllOfferings", XSD::QName.new(namespace, "GetAllOfferingsRequest"), XSD::QName.new(namespace, "GetAllOfferingsResponse"))
             result = driver.GetAllOfferingsRequest(input)
        rescue =&gt; err
                 log err                        
        end
  
        if result
             result.offering.each do |o|
                  if offeringIsSelf?(o)
                     ret &lt;&lt; o.xmlattr_offeringId
                  end
             end 
        end
  
        return ret
   end
  </code></pre>
  
  <p>I don't have much soap experience...and I'm not even sure how wsdlDriver and rpc/driver are any different...just that I probably had a good reason for using the two separate libraries at the time?</p>