なんだかOSGi祭りのにほひがする。

えーっと、自分の気の抜けている間にOSGi関連で結構でかい動きがありましたね。JSR277にも乗っかりそうな雰囲気でてきわ、SpringSource Application PlatformにはEquinoxだわってな感じでだんだんと勢いがついてきたきがしますなー。4月になってOSGi関連のエントリは急に増えた気がします。

まずJSR277(Java Module System)から

Java Module System上でOSGi Bundleを動かせるようにするためのドラフトが提出されました。Supporting OSGi Bundles in the Java Module System | Java.netによると、JavaOne後の数週間後にEDR2(Early Draft Release 2)がでるようです。Java Module Systemの基盤では様々なモジュールシステムをサポートしていく方向なので、EDR2のリリースではJAM module systemと、Java Module System Frameworkが切り離された状態でリリースされるようです。OSGi Module Systemと連携が取れる日も近いでしょう。というか近頃のJSR277のMLではOSGiをなぜサポートしないんだ!という感じで、ほとんど投稿がなかったMLに若干火がついていたようです…。投稿元はこの方。って、リンク先のBlogもJSR277とOSGiの連携について熱く語ってる人なんですけれども。「OSGiデファクトスタンダードを取っているだけではない。きちんとJSRでも承認された仕様だ!」と語るGlyn御大は、OSGiの御大でもありますよ。

SpringSource Application Platform

意外におもったのが、Equinox上で動作するというところ。元々Spring-OSGiはFelix上での動作確認が主だったように見受けられたんですが、ちょっと前のSpring-DMリリースに同梱されているSpring-core 2.5.1の依存ライブラリにEquinoxのライブラリが含まれている事でMLに障害報告が上がってました。リリースプロセスで混入してしまうのはいただけない事ですが、こういうプラットフォームの開発を進めてたから入っちゃったんですね。
もう一つこのプラットフォームが変わっている点はJavaEEをサポートしないと言うところ。WARはサポートするけどEARみたいな重いアーカイブはサポートしないよってことっすかね。そのせいか、ServletコンテナにTomcatが採用されています。もうちょっと軽いコンテナ使ったらいいんじゃないかなと個人的には思いますが。InfoQでも取り上げられていますね。翻訳も近い内に出るでしょう。

ところで日本ではSpringの普及率があまり高くないみたいですが、良くも悪くもSeasarがあるからなんでしょうね。SeasarOSGiをサポートしたらいいのに。*1そう言えばKvasir/SoraっていうV2の頃はZopeのJavaクローンっぽかったCMSはV3にてOSGiをサポートしてやんぜ!って頑張ってた気がするなぁ…。

*1:言い出しっぺの法則』の手には残念ながら乗れないなぁ…。現実的に手一杯。