直到现在我使用soap4r作为Ruby 1.8.x的SOAP客户端,但现在我转向Ruby 1.9.x.不幸的是soap4r不适用于Ruby 1.9.x我只是得到了“无效的多字节转义”,这似乎无法解决,主要是因为自2007年以来soap4r gem没有更新,所以我认为该项目已经死了。
我看了一下handsoap,但是我必须手工绘制所有的东西,这需要花费几天的时间来完成,这是一个很大的API。
是否有其他一些soap客户端会自动将所有soap-xml内容映射到ruby-objects(链接soap4r),反之亦然?
答案 0 :(得分:5)
Savon将XML部分抽象为Ruby Hash。看看:http://github.com/rubiii/savon
答案 1 :(得分:3)
如果这是handsoap的问题,那么你可以使用带有handsoap的hashie gem。如果有帮助,Hashie将xml元素转换为实例方法调用。
Soap4R很痛苦,但我喜欢它的原因之一,就是它提供的独立肥皂服务器。它通过快速构建自己的肥皂服务器来简化响应,从而使外部肥皂服务变得更加容易,这样就可以让你不必向外部肥皂服务器请求集成测试,第二个它不会离开与soap客户端未经测试相关的代码。