Friday, October 14, 2011

Spring Surfの紹介 - 概要の概要 -

とたにです。

 日頃AlfrescoやLiferayなど特定のOSSプロダクトのコンサルティングをしていると、その世界では当たり前のものとして使っていても、実はあまり知られていないツールやプロダクトがあることに気付きます。 今回はそんなプロダクトの1つであるSurf Platform(以下Surf)についてご紹介したいと思います。

 Surf PlatformはもともとAlfrescoのWebインタフェースのコラボレーション基盤のShareを作るために、Alfresco社の内部で開発された動作基盤で、具体的には、WebScriptと呼ばれるWebベースのインタフェースを管理し実行します。 SurfはAlfrescoリポジトリ本体やAlfresco Shareなどさまざまプロダクトに搭載されていて、このためAlfrescoリポジトリを操作するRESTインタフェースを簡単に追加することができるようになっています。

 ここまでは単にSurf Platformとして紹介してきましたが、実は昨年SurfはSpringに寄贈され、Spring Surf として独立したプロダクトとしてメンテナンスされています(リードの開発者はAlfresco社のメンバですが)。SpringではIncubatorステータスですが、実際にはEnterprise向けプロダクトのAlfrescoでは以前から組込まれて利用されているモジュールなので、機能の完備性ではIncubatorレベルはクリアしていると言えるでしょう。

 今日時点でSpringSurfのプロダクトページを見ると、1.0.0が記載されていますが、ドキュメントが全てそろっていなかったり、Eclipseのupdateサイトからはモジュールが取得できなかったりと不十分な状態なので現在準備中だと思われます。現時点の実質的な最新バージョンは1.0.0RC2ですので、1.0.0の正式版が出るまではこのバージョンを使って下さい。

 Spring Surfは、Springと冠しているだけあってSpring MVCなどのSpring Framework 3.0系のモジュール群の上で動作しています。そのため、Springのbeanインジェクションを使った動作拡張や他のSpringモジュルとの連携などが容易な点がメリットとして挙げられます。また、出自がAlfrescoということもあり、設定ファイルの一部をコメントアウトするだけで、バックエンドのAlfrescoと認証連携したり、AlfrescoのREST APIを簡単に呼び出したりすることもできます。 

 次回はSpring Surfで最初のWebサイトを起動するまでの手順をご紹介します。

No comments: