# Has the soap/soap4r module changed recently?

**URL:** <https://www.ruby-forum.com/t/has-the-soap-soap4r-module-changed-recently/121302>\
**Category:** Ruby\
**Created:** [November 26, 2007, 5:45pm UTC](https://www.ruby-forum.com/t/has-the-soap-soap4r-module-changed-recently/121302 "2007-11-26T17:45:42Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![unknown](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/u/4bbf92/32.png) [@unknown](https://www.ruby-forum.com/u/unknown)\
**Post date:** [November 26, 2007, 5:45pm UTC](https://www.ruby-forum.com/t/has-the-soap-soap4r-module-changed-recently/121302/1 "2007-11-26T17:45:42Z")

</div>

I’m taking babysteps learning ruby. The following snippet of code  
worked until last week, when our sysadmin applied some patches/updates  
from Redhat.

require “soap/wsdlDriver”

wsdl = “[HTTP://localhost:8181/customer](HTTP://localhost:8181/customer)”  
soap = SOAP::WSDLDriverFactory.new(wsdl).create\_rpc\_driver  
result = soap.list\_cust({ “cust\_id” =\> “0015000” })  
@cust\_name = result.list\_custROOT.customer.name

Now however, I receive the following error when I try this in irb:

```
bash-3.1$ irb --simple-prompt
>> require "soap/wsdlDriver"
=> true
>> wsdl = "HTTP://davewalker.ivyhill-cinram.com:8181/customer"
=> "HTTP://davewalker.ivyhill-cinram.com:8181/customer"
>> soap = SOAP::WSDLDriverFactory.new(wsdl).create_rpc_driver
=> #<SOAP::RPC::Driver:#<SOAP::RPC::Proxy:HTTP://

```

[davewalker.ivyhill-cinram.com:8181/customer](http://davewalker.ivyhill-cinram.com:8181/customer)\>\>  
\>\> cust = soap.list\_cust( { :cust\_id =\> “0015000” } )  
SOAP::Mapping::MappingError: cannot find type {}string  
– from /usr/lib/ruby/1.8/soap/mapping/wsdlliteralregistry.rb:  
90:in `obj2elesoap' from /usr/lib/ruby/1.8/soap/mapping/wsdlliteralregistry.rb: 141:in `complexobj2soap’  
from /usr/lib/ruby/1.8/wsdl/xmlSchema/complexType.rb:56:in  
`each_element' from /usr/lib/ruby/1.8/wsdl/xmlSchema/complexType.rb:52:in `each’  
from /usr/lib/ruby/1.8/wsdl/xmlSchema/complexType.rb:52:in  
`each_element' from /usr/lib/ruby/1.8/soap/mapping/wsdlliteralregistry.rb: 122:in `complexobj2soap’  
from /usr/lib/ruby/1.8/soap/mapping/wsdlliteralregistry.rb:  
108:in `obj2typesoap' from /usr/lib/ruby/1.8/soap/mapping/wsdlliteralregistry.rb: 93:in `obj2elesoap’  
from /usr/lib/ruby/1.8/soap/mapping/wsdlliteralregistry.rb:  
39:in `obj2soap' from /usr/lib/ruby/1.8/soap/mapping/mapping.rb:127:in `\_obj2soap’  
from /usr/lib/ruby/1.8/soap/mapping/mapping.rb:47:in  
`obj2soap' from /usr/lib/ruby/1.8/soap/mapping/mapping.rb:360:in `protect\_threadvars’  
from /usr/lib/ruby/1.8/soap/mapping/mapping.rb:43:in  
`obj2soap' from /usr/lib/ruby/1.8/soap/rpc/proxy.rb:422:in `request\_doc\_lit’  
from (irb):5:in `collect' from /usr/lib/ruby/1.8/soap/rpc/proxy.rb:421:in `each’  
from /usr/lib/ruby/1.8/soap/rpc/proxy.rb:421:in `collect' from /usr/lib/ruby/1.8/soap/rpc/proxy.rb:421:in `request\_doc\_lit’  
from /usr/lib/ruby/1.8/soap/rpc/proxy.rb:386:in  
`request_doc' from /usr/lib/ruby/1.8/soap/rpc/proxy.rb:340:in `request\_body’  
from /usr/lib/ruby/1.8/soap/rpc/proxy.rb:123:in `call' from /usr/lib/ruby/1.8/soap/rpc/driver.rb:178:in `call’  
from /usr/lib/ruby/1.8/soap/rpc/driver.rb:232:in `list\_cust’  
from (irb):5\>\>  
?\>

Nothing has changed on either the database backend, or the soap  
server. Just the updates to the Redhat development box. What am I  
missing here?

Thanks,
