O projeto Eclipse Virgo anunciou sua versão 3.0, que conclui a transição do servidor Spring DM (Dynamic Modules) para o Eclipse. O lançamento inclui também a última peça do quebra-cabeças: o componente Gemini Web, que agora passa em todos os testes exigidos pelo OSGi para implantação de WABs (Web Application Bundles).
O Eclipse Virgo oferece um ambiente de execução similar ao Tomcat, permitindo instalar módulos (bundles) ou conjuntos de módulos (PARs) e tratá-los como uma aplicação. O Virgo usa o conceito de regiões para separar o espaço de execução dele próprio (região do kernel) dos programas instalados pelo usuário (região do usuário).
Anteriormente, a separação era realizada por frameworks embutidos, mas a funcionalidade foi atualizada recentemente para suportar um dígrafo de módulos que realiza o particionamento através de ganchos (hooks) implementados pelo Equinox. Por ser parte do Equinox, essa funcionalidade pode ser usada fora do Virgo, em ambientes de execução OSGi baseados apenas no Equinox. Quando outros frameworks OSGi passarem a suportar esses novos "resolver hooks" (hooks de resolução), a funcionalidade será portável também para outros ambientes de execução de OSGi .
Outra novidade nesta versão é um módulo que faz o componente web suportar o Jetty (o suporte ao Tomcat também é incluído). Isso oferece uma integração melhor com outros componentes da arquitetura e componentes do runtime do Equinox.
O ambiente de execução padrão mudou do Felix para o Equinox, para implementar a separação em regiões. Mas é provave que a mudança não seja percebida diretamente, já que o Virgo agora inclui o shell Felix Gogo por padrão (tanto para conexões telnet quanto ssh).
Assim como o servidor, existe um framework para aplicações web, o Snaps (antes conhecido como SpringSource Slices), que permite hospedar várias aplicações no mesmo servidor, com URLs em comum e compartilhando alguns dados entre elas. O framework permite que os WABs (WARs "OSGificados") registrem serviços e URLs em uma aplicação hospedeira, de forma que esta consiga percorrer dinamicamente os componentes instalados (via programação ou através de uma biblioteca de tags JSP). Atualmente o Snaps só pode ser executado no Eclipse Virgo. Está sendo desenvolvido um conjunto de plugins para Eclipse que oferecerá suporte ao Virgo .
Os interessados em aprender desenvolvimento web baseado em OSGi e que já estejam familiarizados com conceitos do Spring, verão que usar o Eclipse Virgo é uma maneira fácil de fazer a transição para o mundo do OSGi. Existe um tutorial, bem como um conjunto de documentação para usuários e programadores. O Virgo 3.0 está disponível para download no site da Fundação Eclipse.