matsukaz's blog

Agile, node.js, ruby, AWS, cocos2d-xなどなどいろいろやってます

オープンSOAセミナー

コンポーネントスクウェア主催のオープンSOAセミナーに行ってきました。
内容は最初から最後までSCAの話題。面白かったのは後半のOpen SOA Collaborationの来日メンバーによる技術解説だったかな?
SCAに対する理解はだいぶ深まった・・・と思うけど、いろいろ疑問も出てきたり。そのうち答えを出せると踏んで、とりあえずここに挙げときます。

  • SCDLの記述が微妙に違ってたのはSCAのバージョンの違い?
    • とりあえずSCA 1.0に準拠したミドルウェアを検証すれば分かるかな。
  • サービスの利用側はどうやってサービスのインタフェース(やりとりされるオブジェクトのクラスも)を用意するのか?Web Servicesの場合はWSDLから自動生成しそうだけど、それ以外(EJBとか)はSCAのサービス提供側からもらう?
  • ポリシーの設定によりコンポーネント呼び出し時にセキュリティ上のエラーなどが発生した場合、呼び出し元はうまくハンドリングできるのか?Web Servicesの場合はSOAPExceptionとしか分からない気が。
    • そもそも分かる必要がないのかも。要件次第か。
  • ESBとの連携が気になる。
    • WS-*の仕様に対応していないESB製品は多そうだから、SCAのポリシー次第ではESBを間に挟めなくなりそう。暗号化とか。ポリシーじゃないけどWS-Addressingとかもそうかも。
      • どっちかっていうとESB製品を提供するベンダーに対する質問だけど。
    • WSDLにSCA独自の記述を追加できるって話があったけど、そういうことした場合もESBを挟めなそう。
  • コンポーネントの提供側で定義したポリシーを、コンポーネントの利用側にどうやって伝える?
    • これは会場で質問できた。回答としては、同一ドメイン内なら単純に伝えればいい。別ドメインならWS-*を使うとか。

あと面白かったのがJBIとSCAの違いって質問が出たときのメンバーの反応。やっぱ毎回聞かれてるんだなぁw。結論としては、

  • JBIはミドルウェア内においてコンポーネント間をつなぐ目的で利用。SPI(System Programming API)という位置づけ。
  • SCAはSOAを適用したアプリケーションを構築する際に利用。

とのこと。SIerなら基本的にはJBIを自分でどうこうすることはないんじゃないかと。
JBIは当初はJava EE 6に入るはずだったけど、一昨日のJava One 2007報告会では今のところ入らないかもしれないって言ってたし、JBIの必要性は疑問かも。