Mitch Pronschinske is a Senior Content Analyst at DZone. That means he writes and searches for the finest developer content in the land so that you don't have to. He often eats peanut butter and bananas, likes to make his own ringtones, enjoys card and board games, and is married to an underwear model. Mitch is a DZone Zone Leader and has posted 2576 posts at DZone. You can read more from them at their website. View Full User Profile

Apache Geronimo 2.2 Mostly EE 6 Compliant

01.04.2010
| 10556 views |
  • submit to reddit
The Apache Geronimo application server project is best known for its open source distribution of the Java EE runtime.  With the recent approval of the Java EE 6 spec, Geronimo's main goal is to be fully compliant with the new standards by the end of this year.  Geronimo 2.2, which was just released, already complies with much of the EE 6 spec and offers many of its features.  The new version also includes a number of bug fixes, functional improvements, and up-to-date libraries.  The next version, Geronimo 3.0, plans to be fully Java EE 6 compliant.

Geronimo 2.2 can use the profiles implemented with EE 6 through custom Geronimo implementations called assemblies.  In previous versions, creating customized Geronimo runtimes was largely a build-time operation.  With assemblies in version 2.2, users can export a new custom server image from a running Geronimo server.  Assemblies allow several different approaches for applying plugins.  

Another focus of the Apache Geronimo project is faster startup.  2.2 features a more compact server with improved cluster support using WADI.  There is broader tool support thanks to extended GShell functionality.  Also included are some new plugins for Apache OpenJPA 2.0 and Apache ActiveMQ's administration console.

Geronimo 2.2 has updated integrations with these Apache projects:

  • OpenEJB 3.1
  • Axis 2 1.5
  • Derby 10.5
  • Camel 2.0
  • OpenJPA 1.2
  • ActiveMQ 5.3
  • Tomcat 6.0.2
  • CXF 2.1

And these third party projects:

  • Dojo 1.4
  • Jetty 7

The project committers say that migrating from Tomcat to Geronimo in version 2.2 is probably easier than it was before.  Switching from the commons-logging library to the slf4j library another significant change in Geronimo.  The sfl4j library resolves several issues with various logging product versions.  Log4J is still used in the standard implementation.

Geronimo 2.2 is a big step in making the project fully Java EE 6 compliant.  JAX-B 2.1, JAX-WS 2.1, JAX-RS 0.8, JPA 2.0 and parts of EJB 3.1 are already supported in Geronimo 2.2.  Java EE 6 certification with Sun is the primary goal for Geronimo 3.0.  Committers on the project plan to drop Java SE 5 support by version 3.0 and require SE 6.  Another major goal for Geronimo 3.0 is OSGi support through Apache Karaf or Felix.

Comments

Henk De Boer replied on Mon, 2010/01/04 - 1:45pm

Very interesting!

For the adoption of Java EE 6 it's very important to have multiple servers implement it. Glassfish was first, which AS is going to be the second? ;)

Reza Rahman replied on Mon, 2010/01/04 - 4:45pm

Great job Geronimo team...

Besides simply being Java EE 6 compliant, my personal wish-list for Geronimo would be the following:

1. Very leightweight Java EE 6 Web Profile implementation (much like Resin).

2. A solid embedded container implementation useful for unit testing with JUnit/TestNG (we are doing this for Resin).

3.  Being able to use all EJB service annotations (@Lock, @TransactionAttribute, @Asynch, @Schedule) on CDI managed beans that are not EJBs (we are doing this for Resin).

4. A solid OSGi based server that allows for the addition of Java EE APIs as needed on top of the basic Web Profile (we are not doing this, but the GlassFish folks are).

5. Creating CDI portable extensions for some of the very popular Apache non-standard projects (e.g. Log4J).

Good luck guys!

Cheers,

Reza

---------------------------------

Author, EJB 3 in Action

Expert Group Member, Java EE 6 and EJB 3.1

Resin EJB 3.1 Lite Container Developer

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.