2011-12-09 3 views
0

Ruby를 사용하여 웹 서비스 설정을 설정 한 후 xmlparser에 문제가 발생했습니다. 보시다시피 일반적인 문제입니다 (예 : Ruby soap4r wsdl2ruby.rb errors). 그러나 간단하지만 해결 방법이 좋지 않습니다.Ruby webservices - xmlparser 문제

http://www.tutorialspoint.com/ruby/ruby_web_services.htm에서 취한 코드를 약간 수정하여 (신호 문자열에 둘러싸인 아포스트로피가 없음) 실행하려고합니다. 나는

$ gem install soap4r --include-dependencies 

및 고정 xmlparser.rb를 사용하여 soap4r 먼저 설치 : 66

c.to_s.downcase == name 

에 코드 :

require "soap/rpc/standaloneserver" 

begin 
    class MyServer < SOAP::RPC::StandaloneServer 

     # Expose our services 
     def initialize(*args) 
     add_method(self, 'add', 'a', 'b') 
     add_method(self, 'div', 'a', 'b') 
     end 

     # Handler methods 
     def add(a, b) 
     return a + b 
     end 
     def div(a, b) 
     return a/b 
     end 
    end 
    server = MyServer.new("MyServer", 
      'urn:ruby:calculation', 'localhost', 8080) 
    trap('INT'){ 
    server.shutdown 
    } 
    server.start 
rescue => err 
    puts err.message 
end 

이 불행하게도 여전히 작동하지 않습니다. 자신을 응답 (자체, ...)

답변

0

add_method를 호출 한 후에

undefined method `add_rpc_operation' for nil:NilClass 

: 그것은 나에게 오류가 발생이 인간이 완전하지 않습니다. 슈퍼 생성자 호출이 부족합니다. 추가 :

super(args[0], args[1], args[2], args[3]) 

는 모든 일을 할 것입니다