Ошибки Ruby soap4r wsdl2ruby.rb - PullRequest
       1

Ошибки Ruby soap4r wsdl2ruby.rb

4 голосов
/ 22 апреля 2011

Я пытаюсь запустить скрипт wsdl2ruby.rb, который поставляется с гемом soap4r, и получаю следующие ошибки:

[ral@lap etc]$ ruby /usr/lib/ruby/gems/1.9.1/gems/soap4r-1.5.8/bin/wsdl2ruby.rb
/usr/lib/ruby/gems/1.9.1/gems/soap4r-1.5.8/lib/xsd/charset.rb:13: warning: variable $KCODE is no longer effective
/usr/lib/ruby/gems/1.9.1/gems/soap4r-1.5.8/lib/soap/property.rb:68: warning: encoding option is ignored - u
/usr/lib/ruby/gems/1.9.1/gems/soap4r-1.5.8/lib/soap/property.rb:69: warning: encoding option is ignored - u
/usr/lib/ruby/gems/1.9.1/gems/soap4r-1.5.8/lib/soap/property.rb:70: warning: encoding option is ignored - u
/usr/lib/ruby/gems/1.9.1/gems/soap4r-1.5.8/lib/xsd/xmlparser.rb:74:in `<top (required)>': XML processor module not found. (RuntimeError)
    from <internal:lib/rubygems/custom_require>:29:in `require'
    from <internal:lib/rubygems/custom_require>:29:in `require'
    from /usr/lib/ruby/gems/1.9.1/gems/soap4r-1.5.8/lib/wsdl/xmlSchema/parser.rb:13:in `<top (required)>'
    from <internal:lib/rubygems/custom_require>:29:in `require'
    from <internal:lib/rubygems/custom_require>:29:in `require'
    from /usr/lib/ruby/gems/1.9.1/gems/soap4r-1.5.8/lib/wsdl/xmlSchema/importer.rb:11:in `<top (required)>'
    from <internal:lib/rubygems/custom_require>:29:in `require'
    from <internal:lib/rubygems/custom_require>:29:in `require'
    from /usr/lib/ruby/gems/1.9.1/gems/soap4r-1.5.8/lib/wsdl/importer.rb:9:in `<top (required)>'
    from <internal:lib/rubygems/custom_require>:29:in `require'
    from <internal:lib/rubygems/custom_require>:29:in `require'
    from /usr/lib/ruby/gems/1.9.1/gems/soap4r-1.5.8/lib/wsdl/soap/wsdl2ruby.rb:11:in `<top (required)>'
    from <internal:lib/rubygems/custom_require>:33:in `require'
    from <internal:lib/rubygems/custom_require>:33:in `rescue in require'
    from <internal:lib/rubygems/custom_require>:29:in `require'
    from /usr/lib/ruby/gems/1.9.1/gems/soap4r-1.5.8/bin/wsdl2ruby.rb:5:in `<main>'

У меня установлены следующие самоцветы:

httpclient (2.2.0.1) minitest (1.6.0) грабли (0.8.7) rdoc (2.5.8) soap4r (1.5.8)

Я попытался установить гем синтаксического анализатора xml, который завершился неудачей с множеством ошибок: http://pastie.org/1822127

Кто-нибудь знает, в чем проблема? Я впервые прикасаюсь к Руби.

Является ли soap4r лучшим инструментом для создания клиента веб-сервиса SOAP?

Большое спасибо!

Ответы [ 2 ]

9 голосов
/ 26 апреля 2011

Ответ опубликован на

http://railsforum.com/viewtopic.php?id=41231

работал на меня. То есть я отредактировал файл rubyhome / lib / ruby ​​/ gems / 1.9.1 / gems / soap4r-1.5.8 / lib / xsd / xmlparser.rb и изменил строку 66 с:

  c.downcase == name

до

  c.to_s.downcase == name

и проблема, похоже, решена.

3 голосов
/ 20 июля 2011

Вы также можете попробовать новое официальное репо на Github, в котором есть это исправление, и другие, примененные к основной ветке.Вам нужно настроить свой Gemfile на использование репозитория git следующим образом:

gem 'soap4r', :git => 'git://github.com/felipec/soap4r.git'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...