Springをベースとした新アプリケーションサーバSpringSource。
http://www.infoq.com/jp/news/2008/05/springsource-app-platform
with out EJBということで、J2EEサーバの機能は搭載していない。
ただ、Spring Dynamic Modulesなど、Javaにモジュールという概念を取り入れたOSGiをベースに構築されている。OSGiによりモジュールの
- 依存性の管理
- バージョン管理
- アクセス制御
- 動的なインストール/アンインストール
といったことが可能になる。
現状、アプリケーションを開発する際は大体、何がしらかオープンソースを使ってると思う。でそれらオープンソースのプロダクトが別のオープンソースのプロダクトを利用しているということも少なくない。結局、オープンソースのプロダクト1つを採用すると別のオープンソースも使用しているということになる。
で、たちが悪いのは、複数のオープンソースプロダクトがある特定のオープンソースプロダクトを共に利用しているが、利用しているプロダクトのバージョンが異なるといった場合。Apacheのcommons系のプロダクトとかは利用される側として多いんじゃないだろうか。
まぁ、commons系のプロダクトだと多少バージョンが異なっても動作に困るようなことは無いけど。
ただ、こういった問題は今後もっと増えてくるんじゃないかと思う。
で、そういった問題をOSGiはひょっとして解決してくれるのかもしれない。このプロダクトが依存するプロダクトのバージョンはこれを使用するといったみたいに。
でも、ということは開発時にそういったモジュールのバージョンニングをより意識する必要が出てくるということだ。可能性は広がるものの、意識すべきことも広がっていく…。