0

我继承了一些 Ruby on Rails 代码,并试图在本地启动并运行它。我已经看到它在其他人的机器上工作,但对我来说它抛出了一个异常。例外是 DevicesController#index 中的 Savon::UnknownOptionError。

导致异常的原因是“未知的全局选项::document =”。

具体来说,它在此调用的第 2 行失败:

wsdl_url = "valid url"
@client = Savon::Client.new do |wsdl|
  wsdl.document = wsdl_url
end
4

1 回答 1

1

似乎代码是为 Savon 1.x 编写的当前版本是 2.2.0 你可以明确要求旧版本

gem 'savon', '=1.2.0'
wsdl_url = 'http://www.example.com?wsdl'
@client = Savon::Client.new do
    wsdl.document = wsdl_url
end

response = @client.request :wsdl, :your_method
print response.to_hash

不过,我建议的是更改代码,以便它可以与当前版本一起运行。在http://savonrb.com/version2.html,您可以找到全面的文档和示例。

于 2013-05-12T03:01:33.913 回答