Esse artigo faz parte da revista Java Magazine edição 19. Clique aqui para ler todos os artigos desta edição

jm19_capa.gif 

12pt; TEXT-ALIGN: justify">Entenda a polêmica e as expectativas por trás do projeto mais discutido da comunidade J2EE livre

Iniciativa da Apache Software Foundation, o projeto Geronimo visa construir um novo servidor de aplicações J2EE livre. Tem sido muito discutido, tanto pelas suas características técnicas como pelas divergências que surgiram com o Grupo JBoss, criador do servidor J2EE livre homônimo. O objetivo deste artigo é mostrar o cenário no qual o Apache Geronimo surgiu, seus princípios arquiteturais e configurações básicas.

Como, quando e por quê

Um dos aspectos mais interessantes do Geronimo são suas origens. A iniciativa de se criar mais um servidor de aplicações J2EE livre em vez de concentrar esforços nos existentes parecia, em princípio, contraditória. Mas um dos principais motivos da criação do projeto é a forma de licenciamento dos produtos existentes ser incompatível com a licença Apache.

Um projeto sob a licença LGPL, como o JOnAS ou o JBoss, não pode ser derivado de ou incorporado a um produto com licença incompatível com a LGPL (é o caso da Apache License). A licença Apache permite que o produto seja redistribuído sob qualquer licença, bastando manter os créditos e uma cópia do texto da licença. E como a Apache Software Foundation (ASF) já possui diversos projetos voltados para J2EE, integrá-los a um servidor de aplicação completo parecia uma evolução natural. Além disso, a ASF, como uma entidade sem fins lucrativos, tem acesso facilitado ao kit de testes de compatibilidade (TCK) do J2EE, que verifica a conformidade do produto com a especificação. Estes foram os principais argumentos da Apache ao iniciar o projeto. Entretanto, a história começa algum tempo antes, no surgimento do atual JBoss.

EJBoss e velhas gordas

O JBoss surgiu como evolução de um container EJB chamado EJBoss. Quando o EJBoss tinha apenas quatro meses de idade, foi oferecido ao Apache Jakarta pelo seu criador, Marc Fleury. Apesar da aceitação unânime do projeto, a decisão foi vetada por Brian Behlendorf (co-fundador da Apache), com o comentário que a ASF não era uma “lixeira de projetos open source”. Semanas depois, Marc retribuiu a afirmação apelidando a Apache de “um bando de velhotas gordas bebendo chá”. E assim, como de esperar, estabeleceu-se grande atrito entre as duas organizações, que perdura até hoje.

Fleury continuou o projeto fundando a JBoss LLC, seguindo seu próprio caminho e ampliando o EJBoss para incorporar o Jetty e em seguida o Tomcat, como container web, além de outras integrações. Depois de uma ameaça de processo da Sun por uso indevido do nome EJB, o projeto passou a se chamar apenas JBoss.

Advogados e índios

Os embates entre o JBoss e a Apache não pararam aí. Pouco depois do lançamento do Geronimo, os advogados da JBoss LLC enviaram uma carta à ASF acusando o novo servidor de conter código derivado do JBoss, incluindo exemplos de código. Isso além da sonora afirmação de que iriam “defender agressivamente sua propriedade intelectual”. Imediatamente subiram os "flames" nos fóruns e listas de discussão, questionando aos conceitos de liberdade de software e fazendo ataques às duas instituições.

Outro ponto de impasse foi o próprio nome do projeto. Geronimo foi o mais famoso dos índios Apache, um guerreiro virtuoso e de muita coragem. Lendas dizem que possuía habilidades sobre-humanas, entre elas uma notável invulnerabilidade a balas. Como toda questão étnica é muito delicada, ainda mais em solo americano, houve diversas opiniões contrárias ao uso do nome. Contudo, um grupo de defesa dos interesses indígenas, o HONOR, foi consultado e não impôs restrições. Sendo assim, as outras opções (como DeValera e a pitoresca FINAWJOAC – Famous Indian Name Associated With Jumping Off A Cliff, entre outras) foram rejeitadas e prevaleceu o nome original.

Um lado bom dessa disputa é o progresso que comumente é gerado pela competição. Basta ver, como apenas um exemplo, a evolução de projetos como o KDE e o Gnome que hoje são desktops refinados e de alta qualidade. Esperamos o mesmo para os servidores de aplicações J2EE.

Outro efeito positivo da reclamação da JBoss por sua propriedade intelectual foi o alerta à comunidade. A possível incorporação ilegal de código LGPL em um produto Apache teria um impacto muito negativo para empresas como a IBM ou a Oracle, que trazem software Apache em seus produtos. Felizmente a origem de todos os trechos suspeitos foi esclarecida e o problema foi solucionado antes que houvesse um release do Geronimo que pudesse ser distribuído.

Nasce o Geronimo

Como é padrão com projetos da Apache, o Geronimo ficou na incubadora antes de ser aceito definitivamente. Em agosto de 2003, com o comprometimento de diversos desenvolvedores, como Richard Monson-Haefel (OpenEJB), Geir Magnusson Jr. (Apache) e Bruce Snyder (Castor JDO), o projeto foi oficializado e hoje figura como um projeto “top-level” da fundação Apache, em ...

Quer ler esse conteúdo completo? Tenha acesso completo