我一直在寻找一个功能齐全的ruby WSDL客户端生成器。我试过一个叫wsdl2ruby的,但它不起作用。我认为它在正确检测复杂类型方面存在问题。
如果有的话,谁能告诉我正确的图书馆在哪里?我特别希望为jira提供的SOAP API生成一个全功能的客户端。我查看了jira4r,但它现在似乎已经死了,而且不是最新的。
任何帮助都是非常感谢的。
谢谢。
发布于 2010-04-08 09:08:26
根据个人经验,我强烈建议在Ruby中对web服务客户端使用handsoap,而不是soap4r。
http://github.com/unwire/handsoap
soap4r是一个早期的ruby库,已经很长时间没有更新了,有buggy (从我自己从WSDL生成客户端的经验来看),并且不是一个特别惯用的ruby API。
手皂很活跃,使用路缘和nokogiri,在我的soap4r失望后发现这是一件令人高兴的事情。在生产中愉快地使用它已经有一段时间了。
发布于 2010-04-08 20:03:11
你试过Savon吗?我已经用过几次了,它超级简单和快速。
client = Savon::Client.new "http://example.com/UserService?wsdl"
client.wsdl.soap_actions
=> [:get_all_users, :get_user_by_id, :user_magic]
response = client.get_user_by_id { |soap| soap.body = { :id => 666 } }http://github.com/rubiii/savon
发布于 2010-04-08 08:36:26
您需要结合使用Soap4R和wsdl2rb工具来生成客户端。有关如何使用this blog post执行此操作的详细信息,请查看JIRA。这篇文章有点过时了,我认为你实际上不会像作者那样有那么多问题。
https://stackoverflow.com/questions/2596581
复制相似问题