按照Ruby soap4r wsdl2ruby.rb errors中的建议,我从git://github.com/felipec/soap4r.git加载了soap4r gem,并在xmlparser.rb的第66行进行了更改
c.downcase == name至
c.to_s.downcase == name但是当我运行的时候:
wsdl2ruby.rb --wsdl http://docs.arrayent.com/zamapi.xml --type client --force在一系列警告之后,它最终爆炸了:
F, [2012-06-01T07:54:26.319928 #285] FATAL -- app: Detected an exception. Stopping ... undefined method `collect' for #<String:0x00000100c4a418> (NoMethodError)
/Users/r/Developer/Topaz/usr/lib/ruby/gems/1.9.1/gems/soap4r-1.5.8/lib/xsd/codegen/gensupport.rb:239:in `trim_eol'因为'String#collect‘在以前的Ruby1.9.2版本中是有效的,所以我的直觉是这个Ruby1.9.2版本还没有更新。
有没有更新的?还是补丁?
发布于 2013-03-05 04:47:55
您可以尝试安装此gem https://rubygems.org/gems/mumboe-soap4r。它解决了我的问题。
https://stackoverflow.com/questions/10852675
复制相似问题