Hatena::Grouprubyist

irykazeの日記 このページをアンテナに追加 RSSフィード

2010-03-02RubyでSOAP (3)

ruby でネイティブにSOAPをがんばる方法で、新たな可能性が思いついたので、ちょっとメモ。

Axis2/C のruby bindingを作る。 23:29  Axis2/C のruby bindingを作る。 - irykazeの日記 を含むブックマーク はてなブックマーク -  Axis2/C のruby bindingを作る。 - irykazeの日記  Axis2/C のruby bindingを作る。 - irykazeの日記 のブックマークコメント

すでに、RubyForgeにプロジェクトができてるんですが、全く進んでなさそうだという。残念。

誰も作ってないのなら自分が作る、という気概もないですが。

でも、作りたいなぁと考えるのはただなので、アイデアを書いてみます。


Axis2/C は、WSDL2Cというツールで、Webサービスにアクセスするためのスタブ/スケルトンをジェネレートします。そして、アプリケーションは、それを経由してSOAPをやりとりするアーキテクチャになってます。

で、Axis2/Cのライブラリは、メッセージの送受信を行うのと、「SOAPハンドラ」を呼び出しするって処理を行う。SOAPハンドラはたぶん、WS-* の機能を実装するのに使ってると思います。


もし、自分が、ruby bindingを作るなら、1つのアイデアとして、Axis2/Cのスタブ/スケルトンに対してruby binidngをジェネレートするようなプログラムを書く、というのがあります。すごい適当ですが。

でも、目指すべきRuby firstな開発にはならないですね。



まだ、Axis2/Cのアーキテクチャがよく分かってないし、どんなAPIが用意されてるのかも分からないので、まったく実装イメージがわかないですね。

ただ、Axis2/Cの機能で、Rubyから利用したい機能というと以下の3つかなぁと思ってます。

  • SOAPメッセージの送受信
  • SOAPハンドラの実装
  • AXIOM(Axis2/C内のオブジェクトモデル)

これらを直接Rubyから使えるようにするにはどうすればいいのか、という方向で考えれば、RubySOAPをしゃべる気がするんです。

HappyMapper 23:30  HappyMapper - irykazeの日記 を含むブックマーク はてなブックマーク -  HappyMapper - irykazeの日記  HappyMapper - irykazeの日記 のブックマークコメント

Jaxb に似ている感じがしてます。 XMLを直接オブジェクトへアンマーシャルしてくれるのがうれしい。

意外と見つからなかったので、余計に。

ただ、XSDからソースコードを生成してくれるとか、そういうのがあるともっと良かった。

ゲスト



トラックバック - http://rubyist.g.hatena.ne.jp/irykaze/20100302