JBoss is a leading example of aspect-oriented programming. The key tenet of aspect-oriented programming applies to writing code once in such a way that if a certain condition or aspect of a program recurs, that code can be called upon repeatedly to meet it. Imposing security, regardless of what type of transaction is being executed, is an example of a condition that should be met with aspect-oriented programming. To see more about JBoss' unorthodox approach to open source, see "JBoss Rewrites The Open-Source Rule Book With Red Hat Deal" in our April 17 issue. Marc Fleury and the JBoss team are recognized experts in the technique. Their aspect-oriented ideas have been incorporated into the next edition of Enterprise JavaBeans by the Java Community Process, the Sun Microsystems-led consortium that modifies and adds to Java. To read more about the pending deal, see "Red Hat-JBoss: Hitching Open To Service-Oriented Architecture" in our April 17 issue. After climbing a rocky path to this pinnacle, however, Fleury is critical of open-source competitors. "Geronimo hasn't delivered a useable product to date," he says.
OK, so he used to say much worse things about Jonas. Still, he's knocking Geronimo after it has crossed a hurdle that only one other open-source application server before it has crossed (which happens to be JBoss): certification by Sun that it's Java 2 Enterprise Edition-compliant. To become J2EE-compliant, an application server has to meet about 30,000 tests that ensure it will run in a predictable way with other J2EE code. It's no small hurdle, and Geronimo passed it in January. "Geronimo is not in large production environments" the way JBoss is, concedes Mark Brewer, CEO of Covalent Technologies, an open-source consulting outfit that includes Geronimo among the pieces of code it supports. Rather, "It's being evaluated by many large organizations," he says.
There is much interest in Geronimo because it's built on a framework that allows users to strip away unused portions and concentrate on what they want. "It's easy to add and remove features without changing the core functionality," says Jim Jagielski, CTO of Covalent.
Geronimo also comes with an Apache software license instead of the GPL license that accompanies JBoss. Modifications to JBoss code have to be given back to JBoss. Modifications to Geronimo can go into a commercial product from which a young, entrepreneurial company may try to profit, says Jeff Genender, who leads the Geronimo practice at Virtuas Solutions, another open-source consulting firm. Genender is a committer in the Geronimo open-source project.
So hang on to your hats. There's going to be more than one open-source application server available, and we haven't had a head-to-head, direct competition between open-source projects before.