人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

Ruby での XML-RPC の使い方を教えてください。

http://jp.rubyist.net/magazine/?0007-BundledLibraries
上記の「単独で実行できる XMLRPC::Server」は実行できたのですが、レンタルサーバーなどに設置する「CGIServer CGIで使うサーバ」はどのようなファイルをどのように設定するのでしょうか?


http://www.linux.or.jp/JF/JFdocs/XML-RPC-HOWTO/xmlrpc-howto-ruby.html#XMLRPC-HOWTO-RUBY-SERVER
上記の「単純な Ruby サーバを示します」の例をXMLRPCserver.rb と名前をつけてlocalでWEBrickを動かして 以下のように呼んでみたりしましたが500エラーになりました。
>|ruby|
require 'xmlrpc/client'

client = XMLRPC::Client.new2("http://localhost:8080/XMLRPCserver.rb")
p client.call("sample.sumAndDifference", 5, 3)
||<

●質問者: garyo
●カテゴリ:インターネット ウェブ制作
✍キーワード:.new CGI Client require Ruby
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● いわどん
●60ポイント ベストアンサー

XMLRPC::CGIServerは通常のCGIアプリケーションと同じように使います。名前にServerが付いてますが単体でHTTPサーバの機能を持たず、Apacheなど他のHTTPサーバから起動されます。WEBrickのHTTPサーバでも構いません。

以下はソースに含まれていたサンプルを実際にHTTPサーバ上に置いたものです。実際に動作しますのでお試しください。

まずはウェブブラウザで上記CGIへアクセスし、以下の表示が出ると、CGIとして動作していることが確認できます。

405 Method Not Allowed

Unexpected error occured while processing XML-RPC request!

その後ruby client.rbを実行して、以下のように表示が出れば、クライアント、サーバの両方が正しく動作していることになります。client.rbにはCGIのホスト名とディレクトリ名が埋め込まれていますので、好きに変更してください。

% ruby client.rb
4 + 5 = 9

というわけで、もし500なエラーが出た場合は、ウェブブラウザからアクセスしてみて、CGIとして正しく動作していることを確認してみたはいかがでしょうか。

◎質問者からの返答

ありがとうございます。

動かしてみたところ原因がわかりました。

http://www.linux.or.jp/JF/JFdocs/XML-RPC-HOWTO/xmlrpc-howto-ruby...

上記のサイト(XML-RPC HOWTO)のサンプルに誤記がありましたorz

修正した所上手く動きました。

誤記を知らせる方法があるといいのですが。

誤:s.add_hanlder("sample.sumAndDifference") do |a,b|

正:s.add_handler("sample.sumAndDifference") do |a,b|





[2006-11-29 08:25:29] INFO WEBrick 1.3.1
[2006-11-29 08:25:29] INFO ruby 1.8.5 (2006-08-25) [i386-mswin32]
[2006-11-29 08:25:29] INFO WEBrick::HTTPServer#start: pid=1704 port=8080
[2006-11-29 08:25:57] ERROR CGIHandler: C:/ruby/server/XMLRPCserver.rb:
C:/ruby/server/XMLRPCserver.rb:5: undefined method `add_hanlder' for #<XMLRPC::CGIServer:0x293d8b4> (NoMethodError)
[2006-11-29 08:25:57] ERROR CGIHandler: C:/ruby/server/XMLRPCserver.rb exit with 1
関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ